精华内容
下载资源
问答
  • 创建事务sql语句
    千次阅读
    2021-01-21 18:11:05

    SQL常用语句:

    CREATE DATABASE 库名;创建数据库

    DROP DATABASE库名;  删除数据库

    USE 库名;

    (1) 数据记录筛选:

    sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"  ORDER BY 用于对结果集进行排序

    sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"  LIKE 用于在 WHERE 子句中搜索列中的指定模式。

    sql="select * from 数据表 where 字段名 not like '%字段值%' order by 字段名 [desc]"  NOT 用于在select数据时,查询不在哪一个数据范围的的记录

    sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"  TOP 用于规定要返回的记录的数目。

    sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"  IN确定给定的值是否与子查询或列表中的值相匹配。

    sql="select * from 数据表 where 字段名 between 值1 and 值2"  BETWEEN ... AND...  会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。

    (2) 更新数据记录:

    sql="update 数据表 set 字段名=字段值 where 条件表达式"

    sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

    (3) 删除数据记录:

    sql="delete from 数据表 where 条件表达式"

    sql="delete from 数据表" (将数据表所有记录删除)

    (4) 添加数据记录:

    sql="insert into 数据表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)"

    sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表)

    (5) 数据记录统计函数:

    AVG(字段名)得出一个表格栏平均值

    SELECT AVG(column_name) FROM table_name

    COUNT(*¦字段名) 对数据行数的统计或对某一栏有值的数据行数统计

    SELECT COUNT(column_name) FROM table_name

    MAX(字段名) 取得一个表格栏最大的值

    SELECT MAX(column_name) FROM table_name

    MIN(字段名) 取得一个表格栏最小的值

    SELECT MIN(column_name) FROM table_name

    SUM(字段名) 把数据栏的值相加

    SELECT SUM(column_name) FROM table_name

    (6) 数据表的建立和删除:

    创建:

    CREATE TABLE 数据表(字段1 类型1(长度),字段2 类型2(长度) …… )

    例:CREATE

    TABLE classTab(name varchar(50),datetime default now())

    删除:

    DROP TABLE 数据表           删除内容和定义,释放空间(清空表)

    TRUNCATE TABLE 数据表  删除内容、释放空间但不删除定义(清空表数据, 不能删除行数据)

    DELETE TABLE 数据表   删除内容不删除定义,不释放空间(系统一行一行地删,效率较truncate低)

    关于truncate的总结:

    truncate table在功能上与不带WHERE子句的delete语句相同:二者均删除表中的全部行。

    但truncate比delete速度快,且使用的系统和事务日志资源少。

    delete语句每次删除一行,并在事务日志中为所删除的每行记录一项。所以可以对delete操作进行roll back

    1、truncate在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令Delete将被撤销,而truncate则不会被撤销。2、truncate是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对truncate使用ROLLBACK命令。3、truncate将重新设置高水平线和所有的索引。在对整个表和索引进行完全浏览时,经过truncate操作后的表比Delete操作后的表要快得多。4、truncate不能触发任何Delete触发器。5、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。6、不能清空父表

    更多相关内容
  • SQL语句 事务

    千次阅读 2021-01-19 19:47:51
    SQL语句 事务2018-11-26说明:灰色部分为事务前铺垫操作,黑色部分为事务操作以下介绍的是(显式事务)/*建库*/USE masterGOIF EXISTS(SELECT * FROM SYSDATABASES WHERE NAME="bankDB")DROP DATABASE bankDBEXEC XP_...

    SQL语句 事务

    2018-11-26

    说明:灰色部分为事务前铺垫操作,黑色部分为事务操作

    以下介绍的是(显式事务)

    /*建库*/

    USE master

    GO

    IF EXISTS(SELECT * FROM SYSDATABASES WHERE NAME="bankDB")

    DROP DATABASE bankDB

    EXEC XP_CMDSHELL "MD D:\BANK" --创建存放数据库文件夹

    CREATE DATABASE bankDB

    ON

    (

    NAME = "bankDB_data",

    FILENAME = "D:\BANK\bankDB_data.MDF",

    SIZE = 10MB,

    FILEGROWTH = 15%

    )

    LOG ON

    (

    NAME = "bankDB_LOG",

    FILENAME = "D:\BANK\bankDB_LOG.LDF",

    SIZE = 10MB,

    FILEGROWTH = 15%

    )

    GO

    /*建表*/

    USE bankDB

    GO

    IF EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME = "TEST")

    DROP TABLE TEST

    CREATE TABLE TEST

    (

    TNAME VARCHAR(8) NOT NULL PRIMARY KEY, --主键

    TYUER MONEY CHECK (TYUER>=1) --存款余额不能小于1

    )

    GO

    --为表插入数据

    INSERT TEST VALUES ("A",1000)

    INSERT TEST VALUES ("B",1)

    GO

    /*事务*/

    BEGIN TRANSACTION--开始事务

    DECLARE @errorSun INT --定义错误计数器

    SET @errorSun=0 --没错为0

    UPDATE TEST SET TYUER=TYUER-10 WHERE TNAME="A" --事务操作SQL语句

    SET @errorSun=@errorSun+@@ERROR --累计是否有错

    UPDATE TEST SET TYUER=TYUER+10 WHERE TNAME="B" --事务操作SQL语句

    SET @errorSun=@errorSun+@@ERROR --累计是否有错

    IF @errorSun<>0

    BEGIN

    PRINT "有错误,回滚"

    ROLLBACK TRANSACTION--事务回滚语句

    END

    ELSE

    BEGIN

    PRINT "成功,提交"

    COMMIT TRANSACTION--事务提交语句

    END

    GO

    总结:

    1.什么是事务:事务是一个不可分割的工作逻辑单元,在数据库系统上执行并发操作时事务是做为最小的控制单元来使用的。他包含的所有数据库操作命令作为一个整体一起向系提交或撤消,这一组数据库操作命令要么都执行,要么都不执行。

    2.事务的语句

    开始事物:BEGIN TRANSACTION

    提交事物:COMMIT TRANSACTION

    回滚事务:ROLLBACK TRANSACTION

    3.事务的4个属性

    ①原子性(Atomicity):事务中的所有元素作为一个整体提交或回滚,事务的个元素是不可分的,事务是一个完整操作。

    ②一致性(Consistemcy):事物完成时,数据必须是一致的,也就是说,和事物开始之前,数据存储中的数据处于一致状态。保证数据的无损。

    ③隔离性(Isolation):对数据进行修改的多个事务是彼此隔离的。这表明事务必须是独立的,不应该以任何方式以来于或影响其他事务。

    ④持久性(Durability):事务完成之后,它对于系统的影响是永久的,该修改即使出现系统故障也将一直保留,真实的修改了数据库

    4.事务的保存点

    SAVE TRANSACTION 保存点名称 --自定义保存点的名称和位置

    ROLLBACK TRANSACTION 保存点名称 --回滚到自定义的保存点

    免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。

    http://www.pinlue.com/style/images/nopic.gif

    展开全文
  • SQLSERVER数据库、表的创建SQL语句命令 备份,还原,创建,删除,查询,修改 ** 数据库定义及操作命令:** 按照数据结构来组织、存储和管理数据的仓库。由表、关系以及操作对象组成,把数据存放在数据表中。 修改数据库...

    SQLSERVER数据库、表的创建及SQL语句命令

    备份,还原,创建,删除,查询,修改

    ** 数据库定义及操作命令:**

    按照数据结构来组织、存储和管理数据的仓库。由表、关系以及操作对象组成,把数据存放在数据表中。
    修改数据库密码的命令:
    EXEC sp_password NULL, ‘你的新密码’, ‘sa’
    sp_password Null,‘sa’,‘sa’
    1、备份SQL数据库
    备份SQL数据库:

    backup database [3D-DATA]/*原数据库*/ to  disk='D:\Program Files\Microsoft SQL       Server\MSSQL10.MSSQLSERVER\MSSQL\backup\3D-DATA_backup_20131017.bak/*数据库备份文件*/' 
    with name = '3D-DATA_backup_20131017'/*数据库备份文件*/
    

    查看备份数据库的逻辑文件:

    restore filelistonly 
    from disk= 
    'd:\Program Files\Microsoft SQL Server\
    MSSQL10.MSSQLSERVER\MSSQL\backup\3D-DATA_backup_20131017.bak '
    

    强制还原SQL数据库:
    [其中,Test-3d是已存在的数据库,3D-FEP_data和3D-FEP_log为备份数据库的两个逻辑文件,]

    restore database [Test-3d]
       from disk = 'd:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup\3D-DATA_backup_20131017.bak' 
    with 
    move '3D-FEP_data' to 'D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-3d.mdf', 
    move '3D-FEP_log' to 'D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-3d_log.ldf',
    

    stats = 10/* 表示每完成10%显示一条记录*/ ,replace/表示强制,放置在with后,加英文逗号也可/

    以下为另一种方式:
    -备份数据DB 到.bak文件。然后利用此bak文件恢复一个新的数据库DBTest。

    USE master;
    backup database DB 
    to disk = 'g:\DBBack0930.bak' ;
    restore filelistonly 
    form disk = 'g:\DBBack0930.bak' ;
    
    restore database DBTest(此数据库,已创建) 
    FROM DISK = 'g:\DBBack0930.bak' 
    WITH MOVE 'DBTest' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest.mdf',
    MOVE 'DBTest_log' TO 'E:\Program Files\Microsoft SQL Server2005\Data\DBTest_log.ldf' 
    GO
    

    SQL Server数据库备份有两种方式:
    1、使用命令:BACKUP DATABASE,将数据库文件备份出去;
    2、直接拷贝数据库文件mdf和日志文件ldf的方式。
    下面将主要讨论一下后者的备份与恢复。本文假定您能熟练使用SQL Server Enterprise Manager (SQL Server企业管理器)和SQL Server Quwey Analyser(SQL Server查询分析器)
      正常的备份、恢复方式正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断开,或者停掉整个数据库服务器,然后复制文件。
      卸下数据库的命令:Sp_detach_db
      数据库名连接数据库的命令:Sp_attach_db或者sp_attach_single_file_db s_attach_db [@dbname =] ′dbname′, [@filename1 =] ′filename_n′ [,…16] sp_attach_single_file_db [@dbname =] ′dbname′, [@physname =] ′physical_name′ 使用此方法可以正确恢复SQL Sever7.0和SQL Server 2000的数据库文件,要点是备份的时候一定要将 mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是数据库日志文件。

    **

    2. SQL命令创建数据库及数据表

    **

    use master
    if db_id ('Test-a01')is not null--判断数据库,是否已存在
    drop database [Test-a01]--删除数据库 小心使用 使用错误就跑路
    go
    

    创建Test-a01

    create database [Test-a01] on  primary 
    (	
    	name = 'Test-a01_data', --数据文件的逻辑名称
    	filename = 'D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-a01_data.ndf' , --数据文件的路径和文件名
    	size = 3mb ,-- 数据文件的初始容量
    	maxsize = 10mB --数据文件的最大容量
    )
    log on 
    ( 
    	name = 'Test-a01_log', --事务日志文件的逻辑名称
    	filename = 'D:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\Test-a01_log.ndf' , --事务日志文件的路径和文件名
    	size = 3mb , --事务日志文件的初始容量
    	maxsize = 10mB --事务日志文件的最大容量
    )
    Go
    

    创建表&字段

    use [xxxxx] /*指定创建表的数据库*/
    go
    create table student
    (
    	stuID char(5) primary key,--主键
    	stuname char(20)not null,
    	stusex char(2) check(stusex in('男','女')) default('女'),--设定范围及默认值
    	stuage char(6),
    	stubirth date check(stubirth between '1985-01-01' and '1995-12-31'),--设置日期范围
    	stuaddress varchar(100),
    	stunum char(12),
    	stuemail char(40)check(stuemail like '%@%')
    )
    go
    use [xxxxx]
    go
    create table teacher
    (
    	TeacherID char(5), 
    	Teaname char(20)not null,
    	Teasex char(2) check(Teasex in('男','女')) default('女'),
    	Teaage char(6),
    	Entrydate date check(Entrydate between '1950-01-01' and '2099-12-31'),
    	Teaphone varchar(100),
    	Teanum char(12),
    	Teaaddress char(40)
    )
    

    1、删除新表:

    drop table table_name;
    

    2、创建视图:

    create view viewname as select statement;1create view view_name01(**stuid,stuname,stusex,stuage**) 
    as 
    select **stuid,stuname,stusex,stuage** from student where stuage>=25;
    其中,**中的字段列,必须相同。
    
    如下例2,则不用考虑(比较常用).
    create view view_name02 
    as 
    select stuid,stuname,stusex,stuage from student where stuage>=25;
    
    

    查看视图:

    select * from view_name;
    

    3、删除视图:

    drop view viewname;
    

    4、创建索引:

    create [unique] index idx_name on table_name(字段1);
    create index idx_name on table_name (COLUMN_NAME);
    

    5、删除索引:

    drop index idxname;
    

    常见创建数据表的限制,有以下几种:
    NOT NULL
    UNIQUE
    CHECK
    主键 (Primary Key)
    外来键 (Foreign Key)

    1、NOT NULL
    表示某字段的值,不允许出现空值。
    例如:

    CREATE TABLE Customer 
    (
    	SID int NOT NULL, 
    	Last_Name varchar (30) NOT NULL, 
    	First_Name varchar(30)
    );
    

    2、unique
    表示某字段的值,不允许重复
    例如:

    CREATE TABLE Customer 
    (
    	SID int Unique, 
    	Last_Name varchar (30) NOT NULL, 
    	First_Name varchar(30)
    );
    

    3、check
    检查某字段的值,必须符合某些条件

    CREATE TABLE Customer 
    (
    	SID int  check( sid>0 ), 
    	Last_Name varchar (30) NOT NULL, 
    	First_Name varchar(30)
    );
    

    4、主 键
    主键 (Primary Key) 中的每一笔资料都是表格中的唯一值。
    添加主键SQL命令(注意:选择作主键的列,必须有数值):
    Alter table teacher add primary key(TeacherID);
    Alter table teacher add primary key(TeacherID);

    创建数据表时,加主键的不同方式:
    MySQL:

    CREATE TABLE Customer 
    (SID integer, 
    Last_Name varchar(30), 
    First_Name varchar(30), 
    PRIMARY KEY (SID)); 
    

    Oracle:

    CREATE TABLE Customer 
    (SID integer PRIMARY KEY, 
    Last_Name varchar(30), 
    First_Name varchar(30)); 
    

    SQL Server:

    CREATE TABLE Customer 
    (SID integer PRIMARY KEY, 
    Last_Name varchar(30), 
    First_Name varchar(30)); 
    

    删除主键的SQL语句:
    语法:alter table 表名 drop constraint 主键约束名(非字段名称)
    如:

    alter table Stu_PkFk_S drop constraint PK_S;
    

    5、外 键
    外来键是一个(或数个)指向另外一个数据表主键的字段。外键作用是:确定资料限制输入的参考完整性(referential integrity)。换言之,只有被准许的字段值才会被存入数据库内。
    Store_Information 表格

    StoreID(主键)	store_name      Sales 	Date 	        Reg_ID(外键)
    1001	        Los Angeles 	$1500 	Jan-05-1999 	9003
    1002	        San Diego 	    $250 	Jan-07-1999 	9004
    1003	        Los Angeles 	$300 	Jan-08-1999 	9003
    1004	        Boston 	        $700 	Jan-08-1999 	9001
    

    Geography 表格

    RegionID(主键)	region_name 	store_name 
    9001	        East 	        Boston 
    9002	        East 	        New York 
    9003	        West 	        Los Angeles 
    9004	        West 	        San Diego 
    
    

    创建外键的命令操作:如下,

    alter table [Store_Information] 
    add foreign key (Reg_ID) references [Geography](regionID);
    

    alter table 需要建立外键的表 add constraint 外键名字 foreign key references 外键表(外键字段) ;

    以下列出几个在建置 ORDERS 表格时指定外键的方式:
    外键Reg_ID,指向主键regionID。
    MySQL:

    CREATE TABLE ORDERS 
    (Order_ID integer, 
    Order_Date date, 
    Customer_SID integer, 
    Amount double, 
    Primary Key (Order_ID), 
    Foreign Key (Customer_SID) references CUSTOMER(SID)); 
    

    Oracle:

    CREATE TABLE ORDERS 
    (Order_ID integer primary key, 
    Order_Date date, 
    Customer_SID integer references CUSTOMER(SID), 
    Amount double); 
    

    SQL Server:

    CREATE TABLE ORDERS 
    (Order_ID integer primary key, 
    Order_Date datetime, 
    Customer_SID integer references CUSTOMER(SID), 
    Amount double); 
    

    以下的例子则是改变表格架构来指定外键。这里假设 ORDERS 表格已经被建立,而外键尚未被指定:

    MySQL:

    ALTER TABLE ORDERS 
    ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid); 
    

    Oracle:

    ALTER TABLE ORDERS 
    ADD (CONSTRAINT fk_orders1) FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid); 
    

    SQL Server:

    ALTER TABLE ORDERS 
    ADD FOREIGN KEY (customer_sid) REFERENCES CUSTOMER(sid);
    

    删除外键的SQL命令:
    alter table 表名 drop constraint 外键约束名(非字段名);
    如:

    alter table Stu_PkFk_Sc drop constraint FK_s;
    

    6、Alter Table
    改变表结构的方式:
    1、加一个字段

    Alter table table_name add 字段1 int,字段2 char(10),; 加多个字段
    Alter table table_name add 字段1 int、或字段2 char(10)、…;加一个字段
    

    2、删去一个字段

    Alter table table_name drop column字段1;--(SQLserver数据库,字段前要加“column”)
    

    3、改变字段名称 (此命令SQLserver数据库,不可用)

    ALTER table table_name change字段1 新字段1 char(50); 
    

    4、改变字段的类型(此命令SQLserver数据库,不可用)

    ALTER table table_name modify 字段1 char(20); 
    

    SQL语句:
    一、DML—数据操纵语言SQL命令,分为:select查询、insert into插入、delete from删除、update set修改.
     Select 查询命令
    最复杂、存在非常多的使用方法
    1、查询表中所有的数据

    Select  *  from  table_name;
    

    2、普通条件(where、and、or)查询

    Select *或者字段1,字段2,from table_name where 字段1=值1或字段2=值2;
    

    如查询一个范围的薪资

    SELECT store_name FROM Store_Information WHERE salary > 1000 OR (salary < 500 AND salary > 275);
    

    3、模糊条件(like)查询

    Select *或者字段1,字段2,from table_name where字段1 like %A%;包含A的字符
    Select *或者字段1,字段2,from table_name where字段1 like A%;以A起头的字符
    Select *或者字段1,字段2,from table_name where字段1 like %A;以A结尾的字符
    Select *或者字段1,字段2,from table_name where字段1 like '_汉字_';一个下划线,表示一个字符,共计四个字符
    Select *或者字段1,字段2,from table_name where字段1 like '%汉字%'; %表示无限个字符
    

    4、空值条件(null)查询

    Select *或者字段1,字段2,from table_name where 字段1 is not null;
    

    5、范围查询一 (in)

    Select *或者字段1,字段2,from table_name where 字段1 in (1,2,3,)或者('质量','数量',…)…;-- 字段值可为数值、或字符类型
    

    6、范围查询二 (between …and…)

    Select *或者字段1,字段2,from table_name where 字段1 between 10 and 100; 
    Select *或者字段1,字段2,from table_name where 字段1 between '1990-01-01' and '2012-12-31';
    

    7、排序查询(order by…asc/desc 一般都是组合使用)

    SELECT * FROM table_name  order by 字段1 asc;
    SELECT * FROM table_name  order by 字段2 desc;
    SELECT * FROM table_name  order by 字段1, 字段2,descasc;
    SELECT * FROM table_name where 字段1=数值1 order by 字段1 desc, 字段2 asc,;
    

    8、Count 统计记录数查询

    SELECT  Count(字段1,或字段2,…)[别名a…] FROM table_name; 【一般不与其它字段一起组合,否则会报错,可在后面加别名】
    【加条件“is not null,可过滤掉为空值数据】
    SELECT  Count(字段1,或字段2,…)[别名a…] FROM table_name where(字段1,或字段2,…) is not null; 
    SELECT  Count(字段1,或字段2,…),字段A FROM table_name group by 字段A;
    SELECT  Count(字段1,或字段2,…),字段A FROM table_name where 字段B=数值 group by 字段A;
    【与其它字段一起查询显示,要与group by组合使用,且要显示的"字段A",一定要与group by匹配的"字段A"相同,与字段B不能相同,所以只能是一个集合函数,或者与group by配置的字段名相同】
    

    9、sum 求和

    SELECT  sum(字段1,或字段2,…)FROM table_name;
    sum匹配的字段,一定为数值类型。 
    SELECT  sum(字段1,或字段2,…),字段A FROM table_name group by 字段A;
    SELECT  sum(字段1,或字段2,…),字段A FROM table_name where 字段B=数值 group by 字段A;
    【与其它字段一起查询显示,要与group by组合使用,且要显示的"字段A",一定要与group by匹配的"字段A"相同,与字段B不能相同,所以只能是一个集合函数,或者与group by配置的字段名相同】
    

    10、Max 求和

    SELECT  Max(字段1,或字段2,…)FROM table_name;
    sum匹配的字段,一定为数值类型。 
    SELECT  Max(字段1,或字段2,…),字段A FROM table_name group by 字段A;
    SELECT  Max(字段1,或字段2,…),字段A FROM table_name where 字段B=数值 group by 字段A;
    【与其它字段一起查询显示,要与group by组合使用,且要显示的"字段A",一定要与group by匹配的"字段A"相同,与字段B不能相同,所以只能是一个集合函数,或者与group by配置的字段名相同】
    

    11、Min 求和

    SELECT  Min(字段1,或字段2,…)FROM table_name;
    sum匹配的字段,一定为数值类型。 
    SELECT  Min(字段1,或字段2,…),字段A FROM table_name group by 字段A;
    SELECT  Min(字段1,或字段2,…),字段A FROM table_name where 字段B=数值 group by 字段A;
    【与其它字段一起查询显示,要与group by组合使用,且要显示的"字段A",一定要与group by匹配的"字段A"相同,与字段B不能相同,所以只能是一个集合函数,或者与group by配置的字段名相同】
    

    12、AVG 求平均值

    SELECT  avg(字段1,或字段2,…)FROM table_name;
    sum匹配的字段,一定为数值类型。 
    SELECT  avg(字段1,或字段2,…),字段A FROM table_name group by 字段A;
    SELECT  avg(字段1,或字段2,…),字段A FROM table_name where 字段B=数值 group by 字段A;
    【与其它字段一起查询显示,要与group by组合使用,且要显示的"字段A",一定要与group by匹配的"字段A"相同,与字段B不能相同,所以只能是一个集合函数,或者与group by配置的字段名相同】
    

    13、having筛选组查询
    那我们如何对函数产生的值来设定条件呢?举例来说,我们可能只需要知道哪些店的营业额有超过 $1,500。在这个情况下,我们不能使用 WHERE 的指令。那要怎么办呢?很幸运地,SQL 有提供一个 HAVING 的指令,而我们就可以用这个指令来达到这个目标。
    HAVING 子句通常是在一个 SQL 句子的最后。
    一个含有 HAVING 子句的 SQL 并不一定要包含 GROUP BY 子句。
    HAVING 的语法如下:

    SELECT "栏位1", SUM("栏位2") 
    FROM "表格名" 
    GROUP BY "栏位1" 
    HAVING (函数条件) ;
    
    select (字段1,或字段2,…)from table_name group by <字段1,或字段2,…> having <分组条件>;
    例如:查询出本次考试男女生的总成绩大于等于250分的信息 
    select sex,sum(score) as '总成绩' from student group by sex  having sum(score)>=250;
    

    12、表格连接
    Store_Information 表格

    store_name 	    Sales 	Date 
    Los Angeles 	$1500 	Jan-05-1999 
    San Diego 	    $250 	Jan-07-1999 
    Los Angeles 	$300 	Jan-08-1999 
    Boston 	        $700 	Jan-08-1999 
    
    

    Geography 表格

    region_name 	store_name 
    East 	        Boston 
    East 	        New York 
    West 	        Los Angeles 
    West 	        San Diego 
    
    
    SELECT A1.region_name REGION, SUM(A2.Sales) SALES 
    FROM Geography A1, Store_Information A2 --A1,A2使用到别名,更助于理解
    WHERE A1.store_name = A2.store_name   --关键处,存在相同的字段列
    GROUP BY A1.region_name --按区域名称,进行分类
    

    结果:
    REGION SALES
    East $700
    West $2050
    外部连接

    Select  a2. region_name, sum(a1.Sales ) from Store_Information a1 , Geography a2
    Where  a1. store_name=a2. store_name+   --"+"表示列表中的所有资料,都查取出来
    Group by a2.region_name;
    

    13、CONCATENATE字段列表内容间的串连
    MySQL: CONCAT()
    Oracle: CONCAT(), ||
    SQL Server: +
    CONCAT() 的语法如下:
    CONCAT(字符串1, 字符串2, 字符串3,…): 将字符串1、字符串2、字符串3,等字符串连在一起。请注意,Oracle的CONCAT()只允许两个参数;换言之,一次只能将两个字符串串连起来。不过,在Oracle中,我们可以用’||'来一次串连多个字符串

    SQL Server使用 +,如:加个空格+’ '+

    SELECT region_name + ' ' + store_name FROM Geography 
    WHERE store_name = 'Boston';
    

    14、SUBSTRING
    SQL 中的 substring 函数是用来抓出一个栏位资料中的其中一部分。这个函数的名称在不同的数据库中不完全一样:
    MySQL: SUBSTR(), SUBSTRING()
    Oracle: SUBSTR()
    SQL Server: SUBSTRING() 此函数不可用
    最常用到的方式如下 (在这里我们用SUBSTR()为例):
    SUBSTR(str,pos): 由中,选出所有从第位置开始的字符。请注意,这个语法不适用于SQL Server上。
    SUBSTR(str,pos,len): 由中的第位置开始,选出接下去的个字符
    假设我们有以下的表格:
    Geography 表格

    region_name	  store_name
    East	      Boston
    East	      New York
    West	      Los Angeles
    West	      San Diego
    
    

    例1:

    SELECT SUBSTR(store_name, 3) 
    FROM Geography 
    WHERE store_name = 'Los Angeles'; 
    

    结果:
    ‘s Angeles’
    例2:

    SELECT SUBSTR(store_name,2,4) 
    FROM Geography 
    WHERE store_name = 'San Diego'; 
    

    结果:
    ‘an D’

    15、top查询
    随机取出10条数据

    select top 10 * from tablename order by newid();
    

     insert into…插入
    1、普通常用插入

    Insert into table_name (字段1, 字段2, 字段3,)values (数值1, 数值2, 数值3,);
    

    2、插入子查询结果

    Insert into table_name [(字段1, 字段2, 字段3,)] SELECT 语句;
    

    –后面的select语句中,还可加相应的限制条件(如:where)
    例如:

    insert into [XXXXX].[dbo].[Geography_001] (regionID,region_name,store_name)
    select [regionID],[region_name],[store_name] from [XXXXX].[dbo].[Geography] 
    where regionID>9002;
    

     delete from…删除
    1、删除表中的符合某个条件的所有数据信息:

    Delete from table_name where 字段1=数值1,或字段2=数值2,;
    

    2、删除表中所有内容,表结构不删除,以下两种效果一样:

    Delete table_name;
    truncate table table_name;
    

    3、完全删除表:

    Drop table table_name;
    

     update …set修改

    update table_name set 字段1=数值1 where 字段1=数值1, 字段2=数值2,;
    

    例如:

    UPDATE Store_Information SET Sales = 500
    WHERE store_name = "Los Angeles" 
    AND Date = "Jan-08-1999";
    

    SQL查询的拓展
     UNION 或 UNION ALL
    作用是将两个 SQL 语句的结果合并起来(相当于取两个SQL 语句的并集)
    UNION 的语法如下:
    [SQL 语句 1] UNION [SQL 语句 2]
    限制是两个 SQL 语句查询的字段值(可以为多个字段)内容,必须是同类型的数据。

    SELECT store_name
    FROM [XXXXX].[dbo].[Geography] 
    union
    SELECT 
    Store_Information
    FROM [XXXXX].[dbo].[Store_Information];
    

    结果:

    store_name(字段)
    Boston
    Los Angeles
    New York
    San Diego
    
    

    如果SQL语句中为union all ,则全部将两张表的字段值内容,查询出且包括重复的。

     distinct
    查询重复出现的字段值,只显示一次。

    select distinct 字段名1,字段名2 from 表格 order by 字段名1
    

    例如:
    Store_Information 表格

    store_name 	     Sales	  Date 
    Los Angeles 	 $1500	  Jan-05-1999 
    San Diego 	     $250	  Jan-07-1999 
    Los Angeles 	 $300	  Jan-08-1999 
    Boston 	         $700	  Jan-08-1999
    

    执行语句:

    select distinct [store_name] from [XXXXX].[dbo].[Store_Information];
    

    结果:

    store_name  (字段)
    Boston
    Los Angeles
    New York
    San Diego
    
    

     INTERSECT
    作用是将字段值都存在两个 SQL 语句中时,才查询出结果。(相当于取两个SQL 语句的交集)
    语法:
    [SQL 语句 1] INTERSECT [SQL 语句 2]
    限制是两个 SQL 语句查询的字段值(可以为多个字段)内容,必须是同类型的数据。

    SELECT store_name
    FROM [XXXXX].[dbo].[Geography] 
    intersect  
    SELECT 
    Store_Information
    FROM [XXXXX].[dbo].[Store_Information];
    

    结果:

    store_name  (字段)
    Boston
    Los Angeles
    San Diego
    

     MINUS
    只运用在两个 SQL 语句上。执行第一个 SQL 语句所产生的结果,如果存在第二个 SQL 语句的结果中,则会被去除,不显示最后结果中。执行第二个 SQL 语句所产生的结果,如果不存在第一个 SQL 语句所产生的结果内,则会被去除,不显示最后结果中

    Store_Information 表格

    store_name 	    Sales 	Date 
    Los Angeles 	$1500 	Jan-05-1999 
    San Diego    	$250 	Jan-07-1999 
    Los Angeles 	$300 	Jan-08-1999 
    Boston      	$700 	Jan-08-1999
    

    Internet_Sales 表格

    Date 	        Sales 
    Jan-07-1999 	$250 
    Jan-10-1999 	$535 
    Jan-11-1999 	$320 
    Jan-12-1999 	$750 
    

    而我们要知道有哪几天是有店面营业额而没有网络营业额的。要达到这个目的,我们用以下的 SQL 语句:

    SELECT Date FROM Store_Information
    MINUS
    SELECT Date FROM Internet_Sales 
    

    结果:

    Date
    Jan-05-1999
    Jan-08-1999

     子查询
    在一个 SQL 语句中放入另一个 SQL 语句。在 WHERE 子句或 HAVING 子句中插入另一个 SQL 语句时,就有一个子查询 (subquery) 的架构。
    子查询的作用是:1、用来连接表格。2、唯一能够连接两个表格的方式。

    子查询的语法如下:

    SELECT "栏位1" 
    FROM "表格" 
    WHERE "栏位2" [比较运算素] 
    (**SELECT "栏位1" 
    FROM "表格"
    WHERE [条件]**);
    

    其中,[比较运算素]可以为“=, >, <, >=, <=.”,也可以为“like”,及“and”、“or”,**部分表示内查询。

    展开全文
  • SQL Server创建语句介绍

    千次阅读 2021-04-22 18:34:00
    SQL Server创建表是最常见也是最常用的操作之一,下面就为您介绍SQL Server创建表的语句写法,供您参考,希望可以让您对SQL Server创建表方面有更深的认识。 USE suntest create table 仓库 ( 仓库编号 int , ...

    SQL Server创建表是最常见也是最常用的操作之一,下面就为您介绍SQL Server创建表的语句写法,供您参考,希望可以让您对SQL Server创建表方面有更深的认识。

    USE suntest  
    create table 仓库  
    (  
    仓库编号 int ,   
    仓库号 varchar(50) ,   
    城市 varchar(50) ,   
    面积 int  
    )  
    create table 仓库1  
    (  
    仓库编号 int not null ,   
    仓库号 varchar(50) not null,   
    城市 varchar(50) not null, --不能为空not null--  
    面积 int  
    )  
    create table 仓库2  
    (  
    仓库编号 int primary key , --主键的关键字primary key--  
    仓库号 varchar(50) unique, --唯一索引关键字unique--  
    城市 varchar(50) not null, --不能为空not null--  
    面积 int  
    )  
    create table 仓库3  
    (  
    仓库编号 int primary key , --主键的关键字primary key--  
    仓库号 varchar(50) unique, --唯一索引关键字unique--  
    城市 varchar(50) default '青岛', --不能为空not null--  
    面积 int check (面积>=300 and 面积<=1800)  
    )  
    create table 职工表  
    (  
    职工编号 int identity (1,1) primary key,  
    职工号 varchar(50) unique,  
    仓库号 varchar(50),  
    工资 int check(基本工资>=800 and 基本工资<=2100),  
    )  
    create table 订单表  
    (  
    订单编号 int identity(1,1) primary key,  
    订单号 varchar(50) unique,  
    职工号 varchar(50) references 职工表(职工号),--references两张表通过“职工号”关联--  
    订购日期 datetime,  
    销售金额 int  
    )  
    create table 阳光工资表  
    (  
    职工编号 int identity (1,1) primary key,  
    职工号 varchar(50) unique,  
    仓库号 varchar(50),  
    基本工资 int check(基本工资>=800 and 基本工资<=2100),  
    加班工资 int,  
    奖金 int,  
    扣率 int,  
    应发工资 as (基本工资+加班工资+奖金-扣率) --as为自动计算字段,不能输入值--  
    ) 
    

    以上就是SQL Server创建表语句介绍。

    1:在sql语句中,临时表有两类,分别是局部(local)和全局(global)临时表,局部临时表只在其会话(事务)中可见,全局临时表可以被会话(事务)中的任何程序或者

    模块访问

    2:创建局部临时表

    use db_sqlserver  
    go  
    create table #db_local_table  
    (  
      id  int,  
      name varchar(50),  
      age int,  
      area int  
    )  
    

    创建的临时表不能与其他会话共享,当会话结束时,行和表的定义都将被删除

    3:创建全局临时表

    use db_sqlserver  
    go  
    create table ##db_local_table  
    (  
      id  int,  
      name varchar(50),  
      age int,  
      area int  
    )  
    

    全局临时表对所有用户都是可见的,在每个访问该表的用户都断开服务器连接时,全局临时表才会被删除
    4:创建主键、外键关联的数据库表
    [sql] view plain copy

    use db_sqlserver;  
    go  
    create table db_table5  
    (  
      职工编号 int primary key,  
      职工号  varchar(50) unique,  
      仓库号  varchar(50),  
      工资   int  
    )  
      
    go  
    create table db_table6  
    (  
      订单编号 int primary key,  
      订单号  varchar(50) unique,  
      职工号 varchar(50) references db_table5(职工号),  
      订购日期 datetime,  
      销售金额 int  
    )  
    

    5:创建具有check约束字段的数据库表

    use db_sqlserver;  
    go  
    create table db_table7  
    (  
      仓库编号 int primary key,  
      职工号  varchar(50) unique,  
      仓库号  varchar(50),  
      工资   int,  
      面积  int check(面积>=600 and 面积<=1800)  
    )  
    

    6:创建含有计算字段的数据库表

    use db_sqlserver;  
    go  
    create table db_table8  
    (  
      职工编号 int primary key,  
      职工号 varchar(50) unique,  
      仓库号 varchar(50),  
      基本工资 int check(基本工资>=800 and 基本工资<=2100),  
      加班工资 int,  
      奖金 int,  
      扣率 int,  
      应发工资 as (基本工资 + 加班工资 + 奖金 - 扣率)  
    )  
    

    7:创建含有自动编号字段的数据库表

    use db_sqlserver;  
    go  
    create table db_table9  
    (  
       仓库编号 int identity(1,1) primary key,  
       仓库号 varchar(50) unique,  
       城市 varchar(50) default('青岛'),  
       面积 int check(面积>=300 and 面积<=1800)  
    )  
    

    向表中添加记录:

    insert into [db_sqlserver].[dbo].[db_table9](仓库号, 面积) values('400', 1600);  
    

    仓库编号会自动增加

    8:创建含有排序字段的数据表

    create table db_table10   
    (  
       仓库编号 int identity(1, 1) primary key,  
       仓库号 varchar(50) collate french_CI_AI not null,  
       城市 varchar(50) default '青岛',  
       面积 int check(面积>=300 and 面积<=1800)  
    )  
    

    仓库号是一个排序字段,其中CI(case insensitive)表示不区分大小写,AI(accent insensitive)表示不区分重音,即创建的是一个不区分大小写
    和不区分重音的排序。如果要区分大小和和区分排序,修改代码为:French_CS_AS

    9:动态判断数据库表是否存在

    use db_sqlserver;  
    go  
    if(Exists(select * from sys.sysobjects where id=OBJECT_ID('db_table9')))  
      print '数据库表名已经存在'  
        
    else   
      print '该数据库表名不存在,可以利用该名创建表'  
    

    10:查看表的各种信息,可以查看指定数据库表的属性、表中字段属性、各种约束等信息

    use db_sqlserver;  
    go  
    execute sp_help db_table9;  
    

    11:用select语句查看数据库表的属性信息`

    use db_sqlserver;  
    go  
    select * from sysobjects where type='U'  
    

    12:重命名数据库表

    use db_sqlserver;  
    go  
    execute sp_rename "db_table9", "db_renametable"  
    

    13:增加数据库表的新字段

    use db_sqlserver;  
    go  
    alter table db_table1 add 电子邮件 varchar(50)  
    alter table db_table1 add 联系方式 varchar(50) default '0532-88886396'  
      
    select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')  
    

    14:修改数据库表的字段

    use db_sqlserver;  
    go  
    alter table db_table1 alter column 电子邮件 varchar(200)  
      
      
    select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')  
    

    15:删除数据库表字段

    use db_sqlserver;  
    go  
    alter table db_table1 drop column 电子邮件   
      
      
    select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1') 
    

    16:删除数据库表

    use db_sqlserver;  
    go  
    drop table db_table1  
    drop table db_table1, db_table2  
    

    如果删除有依赖关联的数据库表,即主键、外键关键表、则要删除两个表之间的关联约束,然后才能删除表。注意,也可以先删除引用该表的数据库表,然后
    即可删除该表,

    创建基本表中涉及命名表并定义其列,每列的数据类型。

    SQL的CREATE TABLE语句用于创建新表。

    语法

    CREATE TABLE语句的基本语法如下:

    
    CREATE TABLE table_name(
       column1 datatype,
       column2 datatype,
       column3 datatype,
       .....
       columnN datatype,
       PRIMARY KEY( one or more columns )
    );
    

    CREATE TABLE是关键字告诉数据库系统你想做什么。在这种情况下,你要创建一个新表。唯一的名称或标识表如下CREATE TABLE语句。

    然后在括号的列定义在表中的每一列是什么样的数据类型。使用下面的一个例子,语法变得更清晰。

    可以使用CREATE TABLE语句和SELECT语句的组合来创建从现有表的副本。您可以查看完整的详细信息使用另一个表创建表 。

    示例:

    下面是一个例子,它使用ID作为主键并且为NOT NULL来创建一个客户表的约束,这些字段不能为NULL在创建该表的记录时:

    SQL> CREATE TABLE CUSTOMERS(
       ID   INT              NOT NULL,
       NAME VARCHAR (20)     NOT NULL,
       AGE  INT              NOT NULL,
       ADDRESS  CHAR (25) ,
       SALARY   DECIMAL (18, 2),       
       PRIMARY KEY (ID)
    );
    

    您可以验证,如果你的表已成功创建,可通过查看SQL服务器显示的消息,也可以使用DESC命令,如下所示:

    SQL> DESC CUSTOMERS;
    +---------+---------------+------+-----+---------+-------+
    | Field   | Type          | Null | Key | Default | Extra |
    +---------+---------------+------+-----+---------+-------+
    | ID      | int(11)       | NO   | PRI |         |       |
    | NAME    | varchar(20)   | NO   |     |         |       |
    | AGE     | int(11)       | NO   |     |         |       |
    | ADDRESS | char(25)      | YES  |     | NULL    |       |
    | SALARY  | decimal(18,2) | YES  |     | NULL    |       |
    +---------+---------------+------+-----+---------+-------+
    5 rows in set (0.00 sec)
    

    现在数据库,可以用它来存储用户所需的信息在CUSTOMERS表。

    展开全文
  • sql设置外键(设置外键的sql语句)

    千次阅读 2021-02-01 02:46:07
    sql设置外键(设置外键的sql语句)2020-07-24 11:44:03共8个回答sql怎么设置外键创建数据库时就是有主键的创建了主键,但是表之间的关系没有联系,要建数据库关系图只有主键没有外键时不行的。建外键的前提是此外键...
  • 您可能感兴趣的文章:SQLServer2005触发器提示其他会话正在使用事务的上下文的解决方法SQL Server触发器及触发器中的事务学习SQL Server 触发器 表的特定字段更新时,触发Update触发器SQLServer触发器创建、删除、...
  •  SQL分类:  DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)  DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)  DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)  首先,简要介绍基础语句:  1、...
  • 数据库——事务事务控制语句

    千次阅读 2021-11-13 11:46:17
    事务(Transaction)就是一组SQL语句,这组SQL语句可以被看作是一个工作逻辑单元,是一系列作为一个单元被全部提交或全部回滚的SQL语句。这些语句要么全部被执行,要么全部不被执行,如果其中有任一条SQL语句执行...
  • 文章目录 什么是 SQL 语言 SQL语言分类 SQL语句注意事项 SQL语句的注释 创建逻辑库 创建数据表 数据表的其他常用操作 在之前的章节,我们对 MySQL 的安装、配置有了一定的了解。接下来的篇章我们将来学习一下如何...
  • SQL语句知识大全

    千次阅读 2021-07-09 11:50:11
    SQL 的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。 1.什么是数据库 数据库 (DB database) 概念:数据仓库 软件 安装在操作系统之上 可以存储大量的数据 500w 作用:存储数据 管理...
  • Oracle数据库常用Sql语句大全

    千次阅读 2021-07-19 21:02:10
    sqlserver中可以用top n 的方法,oracle中用 rownum,但如果只用 rownum会随机取数据,如果想按一定顺序取前几条数据 则可这样写: select * from (select列 from 表 where 条件 order by列 desc) where rownum<&...
  • /* 创建一个名字为testdb的数据库,该数据库包含一个数据文件和一个日志...而事务日志文件的逻辑文件名testdb_log ,磁盘文件名为testdb.ldf, 文件初始 容量为5MB,最大容量为10MB,文件谨 增量为1MB数据库创建在C:\se...
  • SQL(八)- python执行SQL语句

    千次阅读 2021-07-26 16:25:44
    PyMySQL python 3.x版本中连接MySQL...(1)用python连接mysql,执行sql语句,返回mysql当前的版本信息: import pymysql #打开数据库连接 db = pymysql.connect('localhost','root','password','mysql') #创建游标
  • 达梦数据库常用sql语句大全

    千次阅读 2021-07-12 11:12:53
    1.更新模式下统计信息: DBMS_STATS.GATHER_SCHEMA_STATS( '模式名', 100, FALSE, 'FOR ALL COLUMNS SIZE AUTO'); 2.初始化代理环境: ... SF_GET_SESSION_SQL(SESS_ID) ,--获取完整sql sess_id ,
  • sql语句学习

    2017-07-03 14:44:56
    自己整理了下基本的SQL语句,重新复习了下SQL使用。都是些最基础的。DataBase创建、增删该查、存储过程、触发器、事务、游标等简单的操作
  • sql delete语句_SQL Delete语句概述

    千次阅读 2020-07-25 13:57:24
    sql delete语句 This article on the SQL Delete is a part of the SQL essential series on key statements, functions and operations in SQL Server. 有关SQL Delete的这篇文章是有关SQL Server中关键语句...
  • SQl语句的级联删除问题删除应该有顺序1,删除link表delete from ref,link where ref.link_code=link.link_code and link_id=?delete from link where link_id=?2,删除plan表delete from ref,plan where ref.plan_...
  • 21、避免频繁创建和删除临时表,以减少系统表资源的消耗。 22、临时表并不是不可使用,适当地使用它们可以使某些例程更有效,例如,当需要重复引用大型表或常用表中的某个数据集时。但是,对于一次性事件,最好使用...
  • SQL语句分类以及详解

    千次阅读 多人点赞 2019-11-26 13:10:40
    SQL (Structured Query Language)结构化查询语言 语句分类 1)DDL:数据定义语言 关键字有:create(创建),drop(删除) ,truncate(删除表结构,再创一张表),alter(修改) 2)DQL:数据查询语言 关键字有:...
  • 本文实例讲述了MySQL常用的建表、添加字段、修改字段、添加索引SQL语句写法。分享给大家供大家参考,具体如下:建表:DROP TABLE IF EXISTS bulletin;CREATE TABLE bulletin(id INT NOT NULL PRIMARY KEY AUTO_...
  • sql语句commit问题

    千次阅读 2020-12-31 10:39:57
    DML修改表数据时,需要提交(insert、...当执行DDL语句时,在每一条语句前后,数据库都将提交当前的事务。如果用户使用insert命令将记录插入到数据库后,又执行了一条DDL语句(如create table),此时insert命令的数据
  • 常用经典SQL语句大全完整版

    千次阅读 2020-09-07 13:29:21
    SQL分类:  DDL—数据定义语言... 首先,简要介绍基础语句:  1、说明:创建数据库 CREATE DATABASE database-name  2、说明:删除数据库 drop database dbname  3、说明:备份sql server  — 创建 备份数据的
  • 通过一个例子说明 Web SQL Database 的基本用法。它首先调用 openDatabase 创建了名为“fooDB”的数据库。然后使用 transaction 执行两条 ...第一条 SQL 语句创建了名为“foo”的表,第二条 SQL 语句向表中插入一条记录
  • 基本SQL语句(一篇就够了)

    千次阅读 多人点赞 2021-11-26 20:47:14
    基本SQL语句(一篇就够了) SQL(Structured Query Language)结构化查询语言,用于存取,查询,更新数据以及管理关系型数据库系统 SQL是1981年由IBM公司推出 SQL分类 根据SQL指令完成的数据库操作的不同,可以将SQL...
  • oracle sql语句大全

    千次阅读 多人点赞 2019-08-06 17:16:54
    oracle常用sql语句函数 sql执行顺序 •FROM •WHERE •GROUP BY •HAVING •SELECT •DISTINCT •UNION •ORDER BY 一、Oracle数据库操作 1、创建数据库 create database databasename 2、删除数据库 ...
  • MySQL数据库-表操作-SQL语句(一)

    千次阅读 2021-01-18 20:31:28
    (可以查看表结构,对应创建SQL语句) 具体可见表中可以有如下表约束: 3.5.1 非空约束 ①非空约束-- NOT NULL,不允许某列的内容为空。 3.5.2 列默认值 ②设置列默认值-- DEFAULT 默认值。 3.5.3 唯一约束 ③唯一...
  • 基础sql语句大全

    千次阅读 2020-05-17 21:30:46
    基础sql语句大全前言SQL语句概述示例所用E-R图Oracle常用数据类型规定第一章 DDL:Data Definition Language基本表的创建、修改、删除View视图Sequence序列号Index索引Synonym同义词 前言 因为最近要考ocp(全英文...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 287,698
精华内容 115,079
关键字:

创建事务sql语句

友情链接: Filects.rar