- 博客(36)
- 收藏
- 关注
原创 MySQL主键(PRIMARY KEY)
“主键(PRIMARY KEY)”的完整称呼是“主键约束”。MySQL 主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可以强制表的实体完整性。选取设置主键约束的字段主键约束即在表中定义一个主键来唯一确定表中每一行数据的标识符。主键可以是表中的某一列或者多列的组合,其中由多列组合的主键称为复合主键。主键应该遵守下面的规则:1....
2020-04-06 18:42:04
3456
原创 数据表的增删改除
创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(实体完整性,引用完整性和域完整性)约束的过程。域完整性:是指一个列的输入有效性,是否允许为空值。实体完整性:是指保证表中所有的行唯一。参照完整性:是指保证主关键字(被引用表)和外关键字(引用表)之间的参照关系。/**************************************************...
2020-04-06 18:40:55
390
原创 数据储存格式
MySQL 的数据类型有大概可以分为 5 种,分别是整数类型、浮点数类型和定点数类型、日期和时间类型、字符串类型、二进制类型等。1) 数值类型整数类型包括 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,浮点数类型包括 FLOAT 和 DOUBLE,定点数类型为 DECIMAL。2) 日期/时间类型包括 YEAR、TIME、DATE、DATE...
2020-04-06 18:39:33
1160
原创 数据库跳转
USE <数据库名>该语句可以通知 MySQL 把<数据库名>所指示的数据库作为当前数据库。该数据库保持为默认数据库,直到语段的结尾,或者直到遇见一个不同的 USE 语句。只有使用 USE 语句来指定某个数据库作为当前数据库之后,才能对该数据库及其存储的数据对象执行操作。USE txt...
2020-04-06 18:35:23
493
原创 数据库的增删改除(以数据库pracrice为例)
1.打开MySQL服务net start mysql2.登录服务mysql -u root -p/************************************************添加数据库**********************/3.创建新数据库pracriceCREATE DATABASE pracrice;!!!注意!!!要...
2020-04-06 18:32:57
202
原创 安装MySQL
1.下载MySQL社区版2.下载免安装包压缩包,解压没有汉语路径的地方3.安装(1)打开cmd管理员(2)转到mysql的bin目录下(3)安装mysql的服务:mysqld --install(4)初始化mysql,在这里,初始化会产生一个随机密码,记住这个密码,后面会用到(mysqld --initialize --console) (5)开启mysql的服务...
2020-04-06 18:28:37
103
原创 win平台下常用软件
bandzip 压缩解压缩工具geek uninstall 卸载软件wizwtree 用树状形式显示文件所占比例dism++ 系统调试美化工具(我常用功能就是禁止开机项,关闭右键一些功能)DiskGenius 磁盘工具(我常用功能就是查询磁盘坏道情况)everything 搜索文件用,比win自带的搜索功能快,全SpaceSniffer 用矩形来表示文件之间的关系,以及大小比例,...
2020-01-21 23:18:28
200
原创 win10子系统wsl2-ubnutu安装build-essential出现404解决方法
安装build-essential一直404,并且尝试用一些特殊网络还是不行。终于找到解决方法。 解决方法是更换软件源。首先备份原来的源,用来出错后进行恢复 sudo cp /etc/apt/sources.list/etc/apt/sources.list_backup 如果更新源后出错了恢复方法,还原更新源: sudo cp /etc/apt/sources.list_...
2019-10-02 20:00:40
1667
原创 友元(友元函数)
文章目录产生的原因创建友元关于友元是否有悖于OOP 产生的原因c++控制类对象私有部分的访问。通常,共有类方法提供唯一的途径,但是c++提供了另外一种形式的访问权限:友元。友元有3种:友元函数友元类友元成员函数在这样一个类声明中://ss.h#ifndef MYTIME_H_#define MYTIME_H_class Time...
2019-09-18 16:58:26
364
原创 类的构造函数与析构函数,const 成员函数(超详细)
构造函数库文件://ss.h#ifndef STOCK_H_#define STOCK_H_#include<string>class Stock{private: std::string company; long shares; double share_val; double total_val; ...
2019-09-15 09:36:37
798
原创 类定义,声明,使用
定义类,类规范一般来说由两个部分组成:类声明:以数据成员的方式描述数据部分,以成员函数(被称为方法)的方式描述共有接口。类方法定义: 描述如何实现类成员函数。类声明提供了类的蓝图,而方法提供了细节在库文件中定义类://ss.h#ifndef STOCK_H_#define STOCK_H_#include<string>class Stock{private:...
2019-09-15 09:25:13
356
原创 封装,类设计,共有接口
类设计尽可能将公有接口与实现细节分开。共有接口表示设计的抽象组件。将实现细节放在一起并将它们与抽象分开就称为封装。数据隐藏(将数据放在类的私有部分中)是一种封装,将实现的细节隐藏在私有部分中。封装的另一个例子是,将类函数定义和类声明放在不同的文件中。...
2019-09-15 09:21:36
208
原创 变量储存持续性、作用域和链接性
静态持续变量 静态持续变量3种链接性:外部链接性(可在其他文件中访问)、内部链接性(只能在当前文件中访问)、无链接性(只能在当前函数或代码中访问)。 要想创建链接性为外部或内部的静态持续变量,必须在代码块外面声明它,要创建没有链接性的静态持续变量,必须在代码块内声明它。外部链接性1.单定义规则 变量只能有一次定义,c++提供了两种变量声明,一种是定义声明(defining decl...
2019-09-14 21:57:50
155
原创 (未完成)函数模板,模板重载,显示具体化
函数模板是通用的函数描述,也就是说,它们使用泛型来定义函数,其中的泛型可用具体的类型(如 int 或 double )替换。比如建立一个交换模板template void Swap(AnyType &a, AnyType &b){AnyType temp;temp = a;a = b;b = temp;}第一行:指出要建立一个模板,并将类型命名为AnyType。...
2019-09-14 21:50:45
111
原创 函数重载(函数多态)
相同的函数名,不同的参数列表。void print (double d, int width);double print (int i, const char* str);建议不要滥用,当使用不同类型的参数,则默认参数不管用了,在这种情况下,应该使用函数重载。...
2019-09-14 21:43:43
1076
原创 函数的默认参数
在函数原型处声明默认参数char* left (const char* str, int n = 1);在调用时即使使用left(“love”)也可以注意:int harpo(int a, int b, int c)当函数有多个函数列表的时候,设置默认值要从右到左设置int harpo (int a, int b, int c = 1)//有效int harpo (int a, i...
2019-09-14 21:43:07
107
原创 何时使用引用参数
引用参数的主要原因有两个:程序员能够修改调用函数中的数据对象。通过传递引用而不是整个数据对象,可以提高程序的运行速度。对于使用传递的值而不作修改的函数数据对象小,按值传递数据对象是数组,使用指针(唯一的选择)数据对象是比较大的结构,使用const引用或者const指针数据对象是类对象,则使用const引用。对于修改调用函数中数据的函数如果数据对象是内置数据类...
2019-09-14 21:42:08
340
原创 将引用用于类对象--可能出现的问题
#include<iostream>#include<string>using namespace std;string version1(const string& s1, const string& s2){ string temp; temp = s2 + s1 + s2; return temp...
2019-09-14 21:35:35
158
原创 内联函数
1.作用 编译器将使用相应的函数代码代替函数调用。对于内联代码,程序无需跳到另一个位置处执行代码,再跳回来,运行速度略微快一些。2.使用#include<iostream>inline double square(double x) { return x* x; }int main(){ using namespace std; dou...
2019-09-14 17:56:50
161
原创 函数指针
1.获取函数的地址假设 think() 是一个函数,那么think就是这个函数的地址,think()是这个函数的返回值process(think)//使用的是这个函数的地址throught(think())//使用的是个函数的返回值2.声明一个函数指针声明正确的函数指针:double (*pf )(int);//double *pf(int);指的是返回一个double类型的指...
2019-09-14 17:54:38
133
原创 递归
通用方法void recurs(argumentlist){ statments1 if (text) recurs(argumemts) statments2}示例一:#include<iostream>void countdown(int n);int main(){ countdown(5); ...
2019-09-14 17:42:20
104
原创 string类的使用
#include…//声明变量std::string lie = "sdfjknkdgn";std::string list[5] = {"dfj","dsabdk","sfkjc","sfcbk","asbjk"};//使用,打印std::cout << lie << '\n';for (int i = 0; i < 5; i++) std:...
2019-09-14 17:40:42
127
原创 共同体(union)
共同体是一种数据格式,它能储存不同的数据类型,但只能同时储存其中的一种类型。也就是说每次只能储存一个值,也就意味着它必须有足够的空间来储存最大的成员,共同体的长度是最大成员的长度。 共用体的用途之一是,当数据项使用两种或更多种格式,且不会同时使用时,可节省空间。最大的作用就是可以节省空间,在记录一些商品ID的时候,有的是整数,有的是字符串,这样可以节省空间。union one4all...
2019-09-14 17:34:43
1202
原创 指针和二维数组的关系
int data[3][4] = {{1,2,3,4}, {9,8,7,6},{2,4,6,8}};int total = sum(data,3);Data 是一个数组名,该数组有3个元素。第一个元素本身是一个数组,有4个int值组成。因此data的类型是指向4个int组成的数组的指针,函数原型int sum(int (*ar2)[4], int size);可以把它当作int su...
2019-09-14 17:25:24
200
原创 一个字等于多少个字节
1字节(byte) = 8位(bit)在16位的系统中(比如8086微机) 1字 (word)= 2字节(byte)= 16(bit)在32位的系统中(比如win32) 1字(word)= 4字节(byte)=32(bit)在64位的系统中(比如win64)1字(word)= 8字节(byte)=64(bit)...
2019-09-14 17:19:00
10802
原创 const与引用的关系
1.使用int i = 6;const int &a = i;i = 9;在此时,a与i是同一个变量,名称不同改变i的值,而不是用a改变输出:a=9,i=9如果使用a改变值则编译错误2.当引用对象类型不同时double i = 6.79;const int &a = i;i = 9.67;输出:a=6,i=9.67这种技术原理...
2019-08-18 23:47:26
205
原创 const与指针的关系
1.const在指针名之前结论:const在指针名之前,指针所指的地址不能改变改变指针指向对象的值:int i = 90;int* const p1 = &i;//p1 is a const object*p1 = 60;此时输出结果为:i=60*p1=60另一种情况,改变指针所指的地址:int i = 90;int y = 10;int* c...
2019-08-18 23:11:16
272
原创 外部变量
使用外部变量加externWhen we define a const with the same name in multiple files, it is as if we had written definitions for separate variables in each file. Sometimes we have a const variable that we...
2019-08-17 19:57:36
135
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人