数据库建表操作SQL语句大全
- 格式:docx
- 大小:439.92 KB
- 文档页数:2
SQL语句创建表1.定义基本表语句语法:USE 数据库名CREATE TABLE 表名(列名类型(大小) DEFAULT'默认值',列名类型(大小) DEFAULT'默认值',列名类型(大小) DEFAULT'默认值',... ...);注:绿色部份是可以省略的。
例:CREATE TABLE S (SNO char(2), SNAME char(8), AGE decimal(2), SEX char(2) DEFAULT'男', DEPT char(2));创建了一个五列的表,其中第四列的默认值为‘男’。
2.定义完整性约束语法: USE 数据库名CREATE TABLE 表名(列名类型(大小) DEFAULT'默认值' CONSTRAINT 约束名约束定义, 列名类型(大小) DEFAULT'默认值' CONSTRAINT 约束名约束定义,列名类型(大小) DEFAULT'默认值' CONSTRAINT 约束名约束定义, ... ...); 注:(1) 绿色部份是可以省略的。
(2) 一个列是可以有多个约束的。
约束定义:(1)NULL | NOT NULL 用于定义列的空值约束。
(定义列) (下面的蓝色部份是单选其中之一)(Id_P int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Address varchar(255),City varchar(255),CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName))(3)PRIMARY KEY 约束唯一标识数据库表中的每条记录。
(即可以定义列也可能定义表)语法:CONSTRAINT 约束名PRIMARY KEY (列名, 列名, ... ...);说明:用于定义基本表的主键。
mysql-建表、添加字段、修改字段、添加索引SQL语句写法表的操作1、建表--如果USERS表存在则删除DROP TABLE IF EXISTS USERS;CREATE TABLE USERS(id INT UNSIGNED NOT NULL AUTO_INCREMENT, # 主键 UNSIGNED ⽆符号 AUTO_INCREMENT ⾃增name VARCHAR(30) NOT NULL COMMENT '⽤户名',sex ENUM('男','⼥') NOT NULL DEFAULT '男', # 使⽤枚举类型,在插⼊的时候可以数值来表⽰,从1开始。
如1则代表男age TINYINT UNSIGNED NOT NULL DEFAULT 1,PRIMARY KEY (`Id`))DEFAULT CHARSET=UTF8 ENGINE=INNODB;操作字段都是ALTER TABLE 表名的格式2、添加字段ALTER TABLE USERS ADD alias varchar(20) COMMENT '别名';3、修改字段 3.1 不修改名称使⽤modifyALTER TABLE USERS MODIFY name varchar(20) NOT NULL COMMENT '⽤户名'; 3.2 修改名称使⽤change 格式是 change 要修改的名称新名称 ...ALTER TABLE USERS CHANGE name username varchar(20) NOT NULL COMMENT '⽤户名';4、删除字段ALTER TABLE USERS DROP COLUMN alias;-- 删除多个字段-- ALTER TABLE USERS DROP COLUMN alias,DROP COLUMN age;库的操作1、建库CREATE DATABASE test CHARACTER SET utf8;2、修改库的默认编码ALTER DATABASE test CHARACTER SET utf8;3、删库跑路DROP DATABASE test;索引(约束)的操作1、添加主键--删除主键ALTER TABLE 表名 DROP PRIMARY KEY;ALTER TABLE USERS ADD PRIMARY KEY ( `id` )2、添加唯⼀索引ALTER TABLE USERS ADD UNiQUE ( `username` )3、添加普通索引ALTER TABLE `USERS` ADD INDEX index_name ( `age` )4、添加全⽂索引ALTER TABLE `表名` ADD FULLTEXT (`列名`)5、添加多列索引 ALTER TABLE `表名` ADD INDEX index_name ( `列名1`, `列名2`, `列名3` )6、添加外键⼀般很少外键约束,外键约束靠代码逻辑实现alter table 表名 add constraint fk_引⽤id foreign key(引⽤id) references 被引⽤表名 (被引⽤id)alter table 表名 drop forign key fk_引⽤id数据库的管理命令1、连接mysql -u root -p123456或mysql -u root -p输⼊密码2、查看操作-- 查看所有库show databases;-- 查看所在库的表show tables;-- 查看库的创建语句show create database test;-- 查看表的创建语句show create table test;-- 查看表的索引-- show index from table_name(表名)show index from users;-- 查看mysql版本select version();-- 查看当前⽤户select user();3、创建⽤户-- 特别需要注意,在 MySQL 中,账号由两部分组成:-- 1. user-- 2. host-- 即使 user 相同,只要 host 不同,也会被认为是不同账号。
SQL语句建表、设置主键、外键、check、default、unique约束· 什么是数据库?存放数据的仓库。
· 数据库和数据结构有什么区别?数据结构要解决在内存中操作数据的问题,数据库要解决在硬盘中操作数据的问题。
数据结构研究⼀些抽象数据模型(ADT)和以及定义在该模型上的⼀些操作,数据库是由表、关系、操作组成。
· 什么是主键?主键⽤来标识记录的唯⼀性。
· 什么是外键?外键⽤来标识表与表之间的联系。
· 什么是check约束?check约束限制了输⼊值的范围。
· 什么是default约束?给某个属性⼀个默认值。
· 什么是unique约束?限制某个属性的唯⼀性。
· unique约束与主键有什么区别?主键不可为null。
关于以上知识的⼀些sql语句:--部门表create table dept(dept_id int primary key,dept_name nvarchar(100) not null,dept_address nvarchar(100))--员⼯表create table emp(--不能写成{emp_id int constraint pk_emp_id_hahaha primary key,--设置主键并命名emp_name nvarchar(20) not null,--名字不能为空emp_sex nchar(1),--↓设置外键,该外键来⾃于dept表(主键表)dept_id int constraint fk_dept_id_heihei foreign key references dept(dept_id),)create table student(stu_id int primary key,stu_sal int check (stu_sal >=1000and stu_sal <=8000),--check约束stu_sex nchar(1) default ('男') --()可以省略,在数据库中字符串必须⽤''括起来)--向student表中插⼊数据insert into student(stu_id,stu_sal) values (1,1000);--可以插⼊insert into student(stu_id,stu_sal) values (2,10000);--插⼊失败,与check约束冲突insert into student values (2,6000,'⼥');--可以插⼊insert into student values (3,6000);--错误,列的个数不匹配。
MySQL常⽤的建表、添加字段、修改字段、添加索引SQL语句写法总结本⽂实例讲述了MySQL常⽤的建表、添加字段、修改字段、添加索引SQL语句写法。
分享给⼤家供⼤家参考,具体如下:建表:DROP TABLE IF EXISTS bulletin;CREATE TABLE bulletin(id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, # 主键uid INT(11) NOT NULL DEFAULT 0, # 创建者idcontext VARCHAR(600) NOT NULL DEFAULT '', # 公告详细内容(300字)begintime DEC(20) NOT NULL DEFAULT 0, # 公告开始时间endtime DEC(20) NOT NULL DEFAULT 0, # 公告结束时间createtime DEC(20) NOT NULL DEFAULT 0, # 创建时间modifytime DEC(20) NOT NULL DEFAULT 0 # 修改时间PRIMARY KEY (`Id`),)DEFAULT CHARSET=UTF8 TYPE=INNODB;修改原有字段名称及类型:ALTER TABLE bulletin CHANGE uid username VARCHAR(50) NOT NULL DEFAULT '';添加新字段:alter table bulletin add citycode varchar(6) not null default 0; # 城市代码1.创建数据库时设置编码create database test character set utf8;2.创建表时设置编码create table test(id int primary key)DEFAULT charset=utf8;3.修改数据库编码alter database test character set utf8;4.修改表默认编码alter table test character set utf8;5.修改字段编码alter table test modify col_name varchar(50) CHARACTER SET utf8;添加索引⽅法1.添加PRIMARY KEY(主键索引)mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )2.添加UNIQUE(唯⼀索引)mysql>ALTER TABLE `table_name` ADD UNIQUE (`column`)3.添加INDEX(普通索引)mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column` )4.添加FULLTEXT(全⽂索引)mysql>ALTER TABLE `table_name` ADD FULLTEXT (`column`)5.添加多列索引mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )更多关于MySQL相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》及《》希望本⽂所述对⼤家MySQL数据库计有所帮助。
一、基础1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1. dat'--- 开始备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表)B:create table tab_new as select col1,col2… from tab_old definition only5、说明:删除新表drop table tabname6、说明:增加一个列Alter table tabname add column col type注:列增加后将不能删除。
DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键:Alter table tabname add primary key(col)说明:删除主键: Alter table tabname drop primary key(col)8、说明:创建索引:create [unique] index idxname on tabname(col….) 删除索引:drop index idxname注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:create view viewname as select statement删除视图:drop view viewname10、说明:几个简单的基本的sql语句选择:select * from table1 where 范围插入:insert into table1(field1,field2) values(value1,value2)删除:delete from table1 where 范围更新:update table1 set field1=value1 where 范围查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!排序:select * from table1 order by field1,field2 [desc]总数:select count as totalcount from table1求和:select sum(field1) as sumvalue from table1平均:select avg(field1) as avgvalue from table1最大:select max(field1) as maxvalue from table1最小:select min(field1) as minvalue from table111、说明:几个高级查询运算词A:UNION 运算符UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。
sql建表语句binary篇一:常用的sql建表语句新建表:create table [表名]([自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,[字段1] nVarChar(50) default \'默认值\' null ,[字段2] ntext null ,[字段3] datetime,[字段4] money null ,[字段5] int default 0,[字段6] Decimal (12,4) default 0,[字段7] image null ,)删除表:Drop table [表名]插入数据:INSERT INTO [表名] (字段1,字段2) VALUES (100,\'\') 删除数据:DELETE FROM [表名] WHERE [字段名]>100更新数据:UPDATE [表名] SET [字段1] = 200,[字段2] = \'\' WHERE[字段三] = \'HAIWA\'新增字段:ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL删除字段:ALTER TABLE [表名] DROP COLUMN [字段名]修改字段:ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL 重命名表:(Access 重命名表,请参考文章:在Access数据库中重命名表) sp_rename \'表名\', \'新表名\', \'OBJECT\'新建约束:ALTER TABLE [表名] ADD CONSTRAINT 约束名CHECK ([约束字段] <= \'2000-1-1\') 删除约束:ALTER TABLE [表名] DROP CONSTRAINT 约束名新建默认值ALTER TABLE [表名] ADD CONSTRAINT 默认值名DEFAULT\'\' FOR [字段名]删除默认值ALTER TABLE [表名] DROP CONSTRAINT 默认值名删除Sql Server 中的日志,减小数据库文件大小dump transaction 数据库名with no_logbackup log 数据库名with no_logdbcc shrinkdatabase(数据库名)exec sp_dboption \'数据库名\', \'autoshrink\', \'true\'\\\'添加字段通用函数Sub AddColumn(TableName,ColumnName,ColumnType)Conn.Execute(\Alter Table \&TableName&\ Add \&ColumnName&\ \&ColumnType&\\)End Sub\\\'更改字段通用函数Sub ModColumn(TableName,ColumnName,ColumnType)Conn.Execute(\Alter Table \&TableName&\ Alter Column\&ColumnName&\ \&ColumnType&\\) End Sub\\\'检查表是否存在sql=\select count(*) as dida from sysobjects where id = object_id(N\'[所有者].[表名]\') and OBJECTPROPERTY(id, N\'IsUserTable\') = 1\set rs=conn.execute(sql)response.write rs(\dida\)\'返回一个数值,0代表没有,1代表存在判断表的存在:select * from sysobjects where id = object_id(N\'[dbo].[tablename]\') and OBJECTPROPERTY(id, N\'IsUserTable\') = 1 某个表的结构select * from syscolumns where id = object_id(N\'[dbo].[你的表名]\') and OBJECTPROPERTY(id, N\'IsUserTable\') = 1篇二:数据库建表操作SQL语句大全新建表:create table [表名]([自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,[字段1] nVarChar(50) default '默认值' null ,[字段2] ntext null ,[字段3] datetime,[字段4] money null ,[字段5] int default 0,[字段6] Decimal (12,4) default 0,[字段7] image null ,)删除表:Drop table [表名]插入数据:INSERT INTO [表名] (字段1,字段2) VALUES (100,'')删除数据:DELETE FROM [表名] WHERE [字段名]>100更新数据:UPDATE [表名] SET [字段1] = 200,[字段2] = '' WHERE [字段三] = 'HAIWA'新增字段:ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL删除字段:ALTER TABLE [表名] DROP COLUMN [字段名]修改字段:ALTER TABLE [表名] ALTER COLUMN [字段名] NVARCHAR (50) NULL重命名表:(Access 重命名表,请参考文章:在Access 数据库中重命名表)sp_rename '表名', '新表名', 'OBJECT'新建约束:ALTER TABLE [表名] ADD CONSTRAINT 约束名CHECK ([约束字段] <= '2000-1-1')删除约束:ALTER TABLE [表名] DROP CONSTRAINT 约束名新建默认值ALTER TABLE [表名] ADD CONSTRAINT 默认值名DEFAUL T '' FOR [字段名] 删除默认值ALTER TABLE [表名] DROP CONSTRAINT 默认值名删除sql server 中的日志,减小数据库文件大小dump transaction 数据库名with no_logbackup log 数据库名with no_logdbcc shrinkdatabase(数据库名)exec sp_dboption '数据库名', 'autoshrink', 'true'\'添加字段通用函数Sub AddColumn(TableName,ColumnName,ColumnType)Conn.Execute(Alter Table &TableName& Add &ColumnName& &ColumnType&) End Sub\'更改字段通用函数Sub ModColumn(TableName,ColumnName,ColumnType)Conn.Execute(Alter Table &TableName& Alter Column &ColumnName& &ColumnType&&q(转载于: 博威范文网:sql建表语句binary)uot;) End Sub\'检查表是否存在sql=select count(*) as dida from sysobjects where id = object_id(N'[所有者].[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1 set rs=conn.execute(sql)response.write rs(dida)'返回一个数值,0代表没有,1代表存在判断表的存在:select * from sysobjects where id = object_id(N'[dbo].[tablename]') and OBJECTPROPERTY(id, N'IsUserTable') = 1某个表的结构select * from syscolumns where id = object_id(N'[dbo].[你的表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1篇三:SQL建表语句约束一、基础(建表、建约束、关系)约束(constraint)是microsoft sql server 提供的自动保持数据库完整性的一种方法,定义了可输入表或表的单个列中的数据的限制条件(有关数据完整性的介绍请参见第9 章)。
数据库create语句CREATE语句是用于在数据库中创建新表的SQL语句。
它由CREATE TABLE关键字后跟表名和表的列定义组成。
以下是一个示例的CREATE语句:```sqlCREATE TABLE students (id INT PRIMARY KEY,name VARCHAR(100),age INT,gender ENUM('Male', 'Female'),address VARCHAR(200));```这个CREATE语句创建了一个名为students的表,包含5个列:id、name、age、gender和address。
其中id列被定义为主键,name和address列的数据类型为VARCHAR,age列的数据类型为INT,gender列被定义为一个ENUM类型,只能取'Male'或者'Female'两个值。
拓展:除了列的定义之外,CREATE语句还可以使用其他选项来定制表的行为。
一些常见的选项包括:- UNIQUE约束:可以在列定义的末尾使用UNIQUE关键字,该列的值必须是唯一的。
- NOT NULL约束:可以在列定义的末尾使用NOT NULL关键字,该列的值不能为空。
- DEFAULT约束:可以为列定义一个默认值,当插入数据时如果没有指定该列的值,则会使用默认值。
- FOREIGN KEY约束:用于在表之间建立关系,指定一个列的值必须存在于另一个表的指定列中。
这些选项可以根据实际需求在CREATE语句中进行定制,以创建符合业务需要的表结构。
hive sql 建表语句Hive是基于Hadoop的数据仓库基础设施,可以通过Hive SQL来进行数据的查询、分析和处理。
以下是符合标题要求的10个Hive SQL建表语句:1. 创建学生表(student):CREATE TABLE student (id INT,name STRING,age INT,gender STRING,grade STRING);2. 创建课程表(course):CREATE TABLE course (id INT,name STRING,credit INT,teacher STRING);3. 创建成绩表(score):CREATE TABLE score (student_id INT,course_id INT,score INT);4. 创建订单表(order):CREATE TABLE order (order_id INT,customer_id INT,order_date DATE,total_amount DOUBLE);5. 创建产品表(product):CREATE TABLE product (product_id INT,name STRING,price DOUBLE,category STRING);6. 创建员工表(employee):CREATE TABLE employee (employee_id INT,name STRING,position STRING,department STRING,hire_date DATE);7. 创建部门表(department):CREATE TABLE department (department_id INT,name STRING,manager_id INT);8. 创建城市表(city):CREATE TABLE city (city_id INT,name STRING,population INT,country STRING);9. 创建销售记录表(sales):CREATE TABLE sales (order_id INT,product_id INT,quantity INT,price DOUBLE,sale_date DATE);10. 创建设备表(device):CREATE TABLE device (device_id INT,name STRING,type STRING,purchase_date DATE,price DOUBLE);以上是10个符合要求的Hive SQL建表语句,通过这些语句可以创建不同类型的表,用于存储各种业务数据。
VFP——SQL语句大全VFP命令、函数及程序语句大全一、主要命令:1、CREATECREATE DATABASE 库文件名.DBC―――建立数据库:CREATE TABLE/DBF 表名(各个字段属性)¬¬¬¬¬¬¬¬¬¬¬¬¬¬—————建立表CREATE VIEW <视图名> AS <SELECT 查询语句>——建立视图执行这个语句时,如果没有打开的数据库,则建立独立的视图,这样的视图不能存储。
2.DROPDROP VIEW <视图>————删除视图3、MODIFY STRUCTURE 作用:显示表文件结构,并允许修改此表的结构。
格式:MODIFY STRUCTURE说明:只有在用USE命令打开表文件以后,才能显示或修改表文件的结构。
4、APPEND作用:在当前表的尾部(无论表中有无记录)追加记录(在当前表指当前正使用的表)。
格式:APPEND [BLANK]说明:在APPEND命令后面加上BLANK参数表示在当前表的尾部添加一条空白记录。
无BLANK参数时,表示在当前表的尾部添加一条记录并要求用户输入相应的字段内容。
5、INSERTINSERT BLANK BEFORE 在当前表的当前记录之前插入一条空白记录INSERT INTO 表名[(字段] V ALUES(表达式1[,表达式2…])——插入记录INSERT INTO 表名FROM ARRAY ArrayName | FROM MEMV AR如带有FROM MEMV AR子句,则用同名的内存变量给字段赋值。
例:INSERT INTO 学生(XH,XM,XB)V ALUES(“950106”,“高山”,“男”)6. ALTER TABLE 表名ADD 字段名字段类型(字段参数)―――添加字段ALTER TABLE 表名ALTER 字段名SET CHECK <条件>——为字段添加有效性规则例:ALTER TABLE 评分ALTER分数SET CHECK 分数>=0 AND 分数<=10ALTER TABLE 表名DROP 字段名[ALTER COLUMN字段名Type {NULL | NOT NULL}][{,字段名Type NULL | NOT NULL}...] [DROP字段名[,字段名[, ...]]例:alter table 歌手add最后得分F(6,2)7、UPDATEupdate <表名> set <字段1=表达式1>,<字段2=表达式2...> where <条件>例: update 产品set 单价=单价*1.088、BROWSE作用:打开一个“浏览”窗口,供用户浏览或修改记录。