2023年7月13日发(作者:)
SQLServer中的数据类型、数据库和数据表的创建⼀、 SQL Server数据库数据类型==字符串(string)类型==数据类型char(n)varchar(n)varchar(max)textnchar()nvarchar()nvarchar(max)ntext()bitbinary(n)varbinary(n)varbinary(max)image描述固定长度的字符串。最多8000个字符可变长度的字符串。最多8000个字符可变长度的字符串。最多1,073,741,824个字符可变长度的字符串。最多2GB⽂本数据固定长度的Unicode字符串。最多4000个字符可变长度的Unicode字符串。最多4000个字符可变长度的Unicode字符串。最多536,870,912个字符可变长度的Unicode字符串。最多2GB⽂本数据允许0,1或NULL固定长度的⼆进制字符串。最多8000字节可变长度的⼆进制字符串。最多8000字节可变长度的⼆进制字符串。最多2GB可变长度的⼆进制字符串。最多2GB==数值(Number)类型==数据类型inttinyintsmallintbigintdecimal(p,s)numeric(p,s)samllmoneymoneyfloat(n)real描述允许介于-2,147,483,648⾄2,147,483,647之间的数字允许介于0⾄225之间的数字允许介于-32768⾄32767之间的数字允许介于-9,223,372,036,854,775,808与-9,223,372,036,854,775,807之间的数字固定精度和⽐例的数字。p表⽰可以存储的最⼤位数,取值于1-38之间,默认是18;s表⽰⼩数位数,取值0-p之间,默认是0同 numeric(p,s)介于-214,748.3648与-214,748.3647之间的货币数据介于-922,337,203,685,477.5808与-922,337,203,685,477.5807之间的的货币数据浮动精度的数字。float(24)表⽰保存4字节,float(53)表⽰保存8字节。默认n为53从-3.40E+38到3.40E+38的浮动精度数字==⽇期(Date)类型==数据类型datetimedatetimedatetime2描述仅⽇期。从0001年1⽉1⽇到9999年12⽉31⽇仅时间。精度为100纳秒⽇期和时间。从1753年1⽉1⽇到9999年12⽉31⽇,精度为3.33毫秒⽇期和时间。从1753年1⽉1⽇到9999年12⽉31⽇,精度为100纳秒datetime2数据类型smalldatetimedatetimeoffset⽇期和时间。从1753年1⽉1⽇到9999年12⽉31⽇,精度为100纳秒描述⽇期和时间。从1900年1⽉1⽇到2079年12⽉31⽇,精度为1分钟与datetime2相同,外加时区偏移存储唯⼀的数字,每当创建或修改某⾏时,该数字会更新。timestamp基于内部时钟,不对应于真实时间。每个表只能有⼀个timestamp变量timestamp==其他数据类型==数据类型sql_variantuniqueidentifierxmlcursortable描述存储最多8000字节不同类型数据,除了text,ntext以及timestamp存储全局唯⼀标识符(GUID)存储XML格式化数据,最多2GB存储对⽤于数据库操作的指针的引⽤存储结果集,共稍后处理⼆、SQL和数据库数据表的创建SQL,指数据化查询语⾔,全称是Structured Query Language,是存取数据以及查询、更新和管理关系数据库的标准语⾔。⼀些重要的SQL命令CREATE DATABASE -创建新数据库CREATE TABLE -创建新表SELECT -从数据库中提取数据UPDATE - 更新数据库中的数据DELETE -从数据库中删除数据INSERT INTO -向数据库中插⼊数据ALTER TABLE -变更数据表DROP TABLE -删除表CREATE INDEX - 创建索引DROP INDEX - 删除索引CREATE VIEW - 创建视图DROP VIEW -删除视图==数据库的创建、修改和删除==创建数据库语法: CREATE DATABASE <数据库名>SQL标识符不区分⼤⼩写,但⼀般建议⼤写实例 :CREATE DATABASE teaching;修改数据库名称ALTER DATABASE teaching MODIFY NAME=teaching1;删除数据库DROP DATABASE teaching1;==创建数据表==语法:CREATE TABLE 表名(列名1 数据类型 [列约束1],列名2 数据类型 [列约束2],[,…n],[表约束])[ ]表⽰⾥⾯的内容是可选的,[,…n]表⽰前⾯的项可重复多次所有内容可以写为⼀⾏,将不同意义的内容分多⾏写增加其可读性实例:--创建带有主键约束和其他约束的数据表CREATE TABLE Student(sclass varchar(10) NOT NULL,snumb varchar(10) PRIMARY KEY,sname varchar(10) NOT NULL,segender varchar(4) DEFAULT '男' CONSTRAINT consgender CHECK (sgender IN('男','⼥'))sbirthday date,sage int CONSTRAINT consage CHECK (sage>=0 AND sage<=150));注:
1. NOT NULL -⾮空约束
2. PRIMARY KEY -主键约束,设置该字段为主键
3. 键/码是指数据库中能唯⼀标识⼀条记录的属性或属性集,分为主键和外键。⼀个表可以有多个键,但只能有⼀个主键,主键的取值不能重复,也不能为空。外键:在本表中不是主键,但在另⼀个表中是主键;外键的取值必须是另⼀表中对那个主键的取值之⼀。
4. DEFAULT -设置默认值
5. CONSTAINT 约束名 CHECK (条件) -设置列约束,--创建带有组合主键和外键的数据表CREATE TABLE Study(snumb varchar(20),cnumb varchar(10),score decimal(5,2),PRIMARY KEY (snumb,cnumb),FOREIGN KEY (snumb) REFERENCES student(snumb),FOREIGN KEY (cnumb) REFERENCES course(cnumb));注:
1. 创建组合主键,写在所有字段后⾯,PRIMARY KEY (字段名)
2. 创建外键:FOREIGN KEY (外键字段名) REFERENCES 对应表名(对应表主键名)==向数据表中插⼊数据==INSERT INTO 表名 (字段名表) VALUES (值列表)字段名表:⽤逗号隔开的字段名或表达式<值列表>的顺序和类型要和前⾯的<字段名表>对应,逗号分隔--在Student表中插⼊数据INSERT INTO StudentVALUES('电⽓','2016006001','王涛','男','1997-2-1',21);INSERT INTO Student (snumb,sname,sclass)VALUES ('2016006002','⽥园','电⽓');==简单查询数据表中的数据==--查询Student表中的所有字段SELECT * FROM Student==从数据库中批量导⼊导出数据==在SQL SERVER数据库引擎中,选中数据库,⿏标右键——任务(task)——导⼊(导出数据),按照向导可批量导⼊导出数据参考资料:
发布者:admin,转转请注明出处:http://www.yc00.com/web/1689247924a225678.html
评论列表(0条)