2026/3/4 20:02:05
网站建设
项目流程
吴江做网站公司,不同类型网站优势,做铝材什么什么网站好,附近那里有做网站的文章目录 1 创建并使用数据库1.1 打开命令行1.2 运行MySQL1.3 建立数据库以及表数据 2 创建表时约束条件2.1 约束类型2.2 其他SQL语句 1 创建并使用数据库
1.1 打开命令行
有的是直接输入密码就可以#xff08;软件版比较常用#xff09;。
有的是首先 Winr #xff0c;输…文章目录1 创建并使用数据库1.1 打开命令行1.2 运行MySQL1.3 建立数据库以及表数据2 创建表时约束条件2.1 约束类型2.2 其他SQL语句1 创建并使用数据库1.1 打开命令行有的是直接输入密码就可以软件版比较常用。有的是首先Winr输入cmd打开MySQL命令行用的多一些。还有的是到数据库安装目录下的bin文件夹在地址栏中运行cmd。注意Windows启动 MySQL 的几种方式http://u3v.cn/6j2iwa。1.2 运行MySQL运行cmd后输入mysql -u root -p再回车我的没有密码所以password那里没有输入。正常来讲输入自己设置的密码默认123456直接回车。1.3 建立数据库以及表数据首先就是建立一个数据库在这里我们把数据库的名字命名为jdbc_demo输入createdatabasejdbc_demo;然后我们检查一下是否创建成功输入showdatabases;使用数据库输入usejdbc_demo;创建表让表中有ID、名字、密码三条信息里面信息可以随便改输入create tableuser(idint(4)notnullprimary key auto_increment,usernamevarchar(20)notnull,passwordvarchar(10)notnull);当然我们在创建表之前可以先判断一下这个表在不在如果数据库中存在这个表就把它从数据库中drop掉。DROPTABLEIFEXISTS表名;总的来说可以这样写IF EXISTS表名;作用如果表存在就删掉这段代码怎么执行都不会报错。DROPTABLEIFEXISTSuser;-- IF EXISTS 表名; 作用如果表存在就删掉这段代码怎么执行都不会报错createtableuser(idint(4)primarykeyauto_increment,-- 主键ID 可以不设置非空因为主键本来就是非空且唯一usernamevarchar(20)notnull,-- 用户名 非空passwordvarchar(10)notnull-- 密码 非空);查看表是否存在输入showtables;查看表的定义输入descuser;插入数据我们在这里随便写一下输入insert into uservalues(0,tom,12);查看数据输入select*fromuser;到这里我们就完成一个创建数据库、建表的过程了我们看一下运行效果注意事项所有的符号都是英文编写。2 创建表时约束条件约束是建表时给某一列增加的强制数据规则创建表的语法结构CREATETABLE表名(列名数据类型[列级完整性约束定义]{,列名数据类型[列级完整性约束定义]…}[,表级完整性约束定义]);2.1 约束类型根据上表student表结构写一下约束类型主键PRIMARY KEY一个表最多只能设置一个是表每行的唯一性标识非空且唯一外键FOREIGN KEY是别的表中的主键两个表有依赖关系被别的表依赖的表称为父表依赖别的表的表成为子表子表数据增加或修改时数据必须在父表中存在。父表中数据删除或修改时数据没有被子表使用非空NOT NULL不允许为空唯一性UNIQUE KEY如果某列定义加了这个约束那后续数据不允许出现重复唯一约束允许NULL值的存在比如说手机号。每个表最好都有主键约束检查约束CHECK(条件表达式)用于限制列的取值范围或规则例如限制性别只能是男或女自增auto_increment常用在主键上如果ID有1、2、3、4、5删掉了3号那么会变成1、2、4、5【例一】用student表进行举例snonamesexagedepuid09512101张三男18计算机系00000109512102李四男19计算机系00000209512103王五女20计算机系000003列名数据类型约束说明snoCHAR(8)主键每个学生学号应非空且唯一nameCHAR(10)非空姓名信息必须要保存sexCHAR(2)检查取值“男”或“女”ageINT检查小于10大于60的学生年龄无意义depVARCHAR(26)default默认值为“计算机系”uidCHAR(18)唯一值每个人的身份证号是唯一创建student表CREATETABLEstudent(snoCHAR(8)PRIMARYKEY,nameCHAR(10)NOTNULL,sexCHAR(2)CHECK(sex男ORsex女),ageINTCHECK(age10ANDage60),depVARCHAR(26)default计算机系,uidCHAR(18)UNIQUE);【例二】用stulesson表进行举例snocnamescore001数据库原理90003数据库原理80003C语言75列表数据类型约束说明snoCHAR(8)cnameCHAR(50)非空姓名信息必须要保存scoreINT检查在0~100之间创建stulesson表CREATETABLEstulesson(snoCHAR(8),cnameCHAR(50)NOTNULL,scoreINTCHECK(score0ANDscore100),PRIMARYKEY(sno,cname),FOREIGNKEY(sno)REFERENCESstudent(sno))注释表名所要定义的基本表的名字列名组成该表的各个属性列列级完整性约束条件涉及相应属性列的完整性约束条件表级完整性约束条件涉及一个或多个属性列的完整性约束条件其中PRIMARY KEY为主码约束CHECK为检查约束。2.2 其他SQL语句删除数据库drop database数据库名删除表drop table表名在表的末尾添加一个列Alter table表名add列名 数据类型 (约束条件)在表的开头添加一个列Alter table表名add列名 数据类型 (约束条件)first此外想直接导入sql文件或者写好后想导出数据库怎么办可以参考下面这篇文章http://i9n.cn/EzpXi。3 char 和 varchar 区别char和varchar都是SQL数据库中用于存储字符串数据类型的字段类型它们的主要区别在于存储方式、空间效率以及长度处理1存储方式char定长字符串类型每个char类型的字段会占用预定义的固定长度的空间不论实际存储的字符串长度是否达到预设长度。例如如果你声明一个char(10)字段那么即使你只存储了3个字符也会占用10个字符的存储空间并用空格或其他空白字符填充剩余的7个字符位置。varchar变长字符串类型根据实际存储的字符数动态分配存储空间。例如对于varchar(10)若存储3个字符只会占用包含3个字符及必要结束标记的存储空间。2空间效率char当数据长度往往固定且较小或者经常填充到预定义长度时空间利用率较高但存储短字符串时可能会造成空间浪费。varchar更适合存储长度变化较大的字符串能有效节省空间特别是对于大多数字符串都不满预定义长度的情况下。3性能char因为长度固定在数据存储和检索上可能会更快特别是在索引密集型操作中因为存储结构更加紧凑和可预测。varchar数据长度不固定尽管现代数据库系统对此做了优化但在某些条件下尤其是在索引较大且字符串长度变化范围大的情况下其性能可能略低于char。4适用场景char适用于存储固定长度的数据如身份证号码、ID、邮政编码等或者是长度一定且不需要额外空间的场景。varchar适用于存储长度可变的数据如姓名、地址、评论等这些数据长度可能有很大差异。需要注意的是不同数据库系统对char和varchar的具体实现可能会有所不同包括最大长度限制、是否填充空格、存储效率等方面。在MySQL等数据库中varchar的最大长度可达65535字节而在Oracle数据库中varchar2是varchar的增强版本通常用于替代varchar。文章已获作者授权转载版权归原作者所有如有侵权与本账号无关可联系删除。 原文作者二哈喇子原文链接https://rej177.blog.csdn.net/article/details/122727753?spm1001.2014.3001.5502