您的位置:新葡亰496net > 网络数据库 > 新葡亰496net:mysql常用语法操作,SQL必知必会

新葡亰496net:mysql常用语法操作,SQL必知必会

发布时间:2019-09-15 20:17编辑:网络数据库浏览(111)

    select CustomerNo from dbo.Customers;
    

    推荐:

    一、顾客管理:

    零、客户管理:

    开发CMD,进入数据库命令:mysql -hlocalhost -uroot -p

    通配符的利用

    零、顾客管理:

    1、新建客商:

      1、新建客商:

    退出数据库:exit

    select *from dbo.Customers;
    select CustomerNo from dbo.Customers
    where CustomerNo LIKE'[AQ]%';--[]表示中括号中内容任取其一,%指代任意多个字符
    SELECT CustomerNo FROM Customers
    WHERE CustomerNo LIKE '_TM00_';--_指代任意单个字符
    

    1、新建顾客:

    >CREATE USER name IDENTIFIED BY 'ssapdrow';

        >CREATE USER name IDENTIFIED BY 'ssapdrow';

     

    拼接字段

    >CREATE USER name IDENTIFIED BY 'ssapdrow';

    2、更换密码:

      2、退换密码:

    客户管理:

    1 select CustomerNo '(' CustomerState ')' 
    2 AS CustomerTitle
    3 from dbo.Customers
    4 ORDER BY CustomerNo DESC;--将两列合并成一列并取别名为CustomerTitle,按照CustomerNo降序排列
    

    2、改换密码:

    >SET PASSWORD FOR name=PASSWORD('fdddfd');

        >SET PASSWORD FOR name=PASSWORD('fdddfd');

      1、新建客商:

    文本管理函数的选用RT奥迪Q7IM和LTGranCabrioIM

    >SET PASSWORD FOR name=PASSWORD('fdddfd');

    3、权限管理

      3、权限管理

        >CREATE USER name IDENTIFIED BY 'ssapdrow';

    1 SELECT RTRIM(CustomerNo) '(' RTRIM(CustomerState) ')'
    2 AS CustomerTitle
    3 FROM Customers
    4 ORDER BY CustomerNo DESC;--在上一条语句的基础上去掉字符串右边的空格
    

    3、权限管理

    >SHOW GRANTS FO卡宴 name;    //查看name客商权限
    >GRANT SELECT ON db_name.* TO name;    //给name用户db_name数据库的保有权限
    >REVOKE SELECT ON db_name.* TO name;    //GRANT的反操作,去除权限;

        >SHOW GRANTS FO揽胜极光 name;    //查看name客户权限

      2、退换密码:

    排序OPAJERODE逍客 BY并以列号指代某一列

    >SHOW GRANTS FO路虎极光 name;    //查看name客户权限

    二、数据库操作: 

        >GRANT SELECT ON db_name.* TO name;    //给name用户db_name数据库的富有权限

        >SET PASSWORD FOR name=PASSWORD('fdddfd');

    1 SELECT CustomerNo,CustomerShortName,CustomerState,Class from dbo.Customers
    2 ORDER BY 4 DESC,2;
    

    >GRANT SELECT ON db_name.* TO name;    //给name用户db_name数据库的有所权力

    1、查看数据库:

        >REVOKE SELECT ON db_name.* TO name;    //GRANT的反操作,去除权限;

      3、权限管理

    NOT操作符,检索除某一项之外的持有数据

    >REVOKE SELECT ON db_name.* TO name;    //GRANT的反操作,去除权限;

    >SHOW DATABASES;

    一、数据库操作: 

        >SHOW GRANTS FOHighlander name;    //查看name顾客权限

    SELECT CustomerNo FROM dbo.Customers
    WHERE NOT CustomerNo LIKE'[QC]%'
    

    一、数据库操作:

    2、创造数据库:

      1、查看数据库:

        >GRANT SELECT ON db_name.* TO name;    //给name用户db_name数据库的装有权力

    IN操作符,检索在有些条件限制内的数目

    1、查看数据库:

    >CREATE DATABASE db_name;  //db_name为数据库名

        >SHOW DATABASES;

        >REVOKE SELECT ON db_name.* TO name;    //GRANT的反操作,去除权限;

    SELECT CustomerNo,Class FROM dbo.Customers
    WHERE CustomerNo IN ('ATM002','QTM104','ATM004')
    ORDER BY 2 DESC;
    

    >SHOW DATABASES;

    3、使用数据库:

      2、成立数据库:

    一、数据库操作: 

    文本处理函数UPPE卡宴和LOWERAV4的选取,将列值转变为题写恐怕转变到小写

    2、成立数据库:

    >USE db_name;

        >CREATE DATABASE db_name;  //db_name为数据库名

      1、查看数据库:

    SELECT UPPER(CustomerNo) AS CUS,Class FROM dbo.Customers
    WHERE CustomerNo LIKE 'Cus%';
    
    SELECT LOWER(CustomerNo) AS cus,Class FROM dbo.Customers
    WHERE CustomerNo LIKE '_TM%'
    

    >CREATE DATABASE db_name;  //db_name为数据库名

    4、删除数据库:

      3、使用数据库:

        >SHOW DATABASES;

    时光管理函数DATEPART的运用,取时间值中的某一项数据

    3、使用数据库:

    >DROP DATABASE db_name;

        >USE db_name;

      2、创设数据库:

    SELECT Created from dbo.Inspections
    WHERE DATEPART(YY,Created)=2018;
    

    >USE db_name;

    三、创建表:

      4、删除数据库:

        >CREATE DATABASE db_name;  //db_name为多少库名

    聚拢函数AVG,COUNT,MAX,MIN,SUMD的选择

    4、删除数据库:

    1、创建表:

        >DROP DATABASE db_name;

      3、使用数据库:

    SELECT AVG(TotalAmount) AS AvgAmount FROM dbo.Inspections;
    
    SELECT COUNT(*) AS CountNum FROM dbo.Customers
    WHERE CustomerState='销售机会';
    SELECT CustomerNo FROM dbo.Customers
    WHERE CustomerState='销售机会';
    
    SELECT MAX(TotalAmount) AS MaxAmount FROM dbo.Inspections;
    SELECT * FROM dbo.Inspections WHERE TotalAmount='126000'
    
    SELECT * FROM dbo.Inspections;
    SELECT SUM(TotalVolumn) AS SumV FROM dbo.Inspections;
    SELECT TotalAmount TotalGrossWeight AS SumV FROM dbo.Inspections;
    
    SELECT COUNT(*) AS countNo,
    MIN(TotalVolumn) AS minTV,
    MAX(TotalVolumn) AS maxTV,
    AVG(TotalVolumn) AS avgTV
    FROM dbo.Inspections
    

    >DROP DATABASE db_name;

    >CREATE TABLE table_name(
    >id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,    //id值,无符号、非空、递增——独一性,可做主键。
    >name VARCHAR(60) NOT NULL
    >score TINYINT UNSIGNED NOT NULL DEFAULT 0,    //设置暗许列值
    >PRIMARY KEY(id)
    >)ENGINE=InnoDB    //设置表的囤积引擎,一般常用InnoDB和MyISAM;InnoDB可信,帮衬专业;MyISAM高效不协理全文字笔迹查验索
    >DEFAULT charset=utf8;  //设置暗中认可的编码,幸免数据库汉语乱码

    二、创建表:

        >USE db_name;

    分组函数GROUP BY

    二、创建表:

    万一有法则的开创数据表还能动用

      1、创建表:

      4、删除数据库:

    SELECT COUNT(*) AS countNO
    FROM dbo.Customers
    WHERE CustomerNo LIKE '_TM%'
    GROUP BY CustomerState;
    

    1、创建表:

      >CREATE TABLE IF NOT EXISTS tb_name(........

        >CREATE TABLE table_name(

        >DROP DATABASE db_name;

    对组管理标准函数HAVING,对已分组的组开展更为筛选

    >CREATE TABLE table_name(

    2、复制表:

        >id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,    //id值,无符号、非空、递增——独一性,可做主键。

    二、创建表:

    SELECT CustomerState,COUNT(*) AS countNo
    FROM dbo.Customers
    WHERE CustomerNo LIKE '_TM%'
    GROUP BY CustomerState
    HAVING CustomerState='产品认可';
    

    >id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,    //id值,无符号、非空、递增——独一性,可做主键。

    >CREATE TABLE tb_name2 SELECT * FROM tb_name;

        >name VARCHAR(60) NOT NULL

      1、创建表:

    内统一,联结六个表的查询语句

    >name VARCHAR(60) NOT NULL

    如故部分复制:

        >score TINYINT UNSIGNED NOT NULL DEFAULT 0,    //设置暗许列值

        >CREATE TABLE table_name(

    SELECT * FROM dbo.Quotations;
    SELECT QuotationNo,QuotationStatus,Class
    FROM Quotations,Customers
    WHERE Quotations.CustomerNo=Customers.CustomerNo;
    
    SELECT QuotationNo,QuotationStatus,Class
    FROM Quotations INNER JOIN Customers
    ON Quotations.CustomerNo=Customers.CustomerNo;
    

    >score TINYINT UNSIGNED NOT NULL DEFAULT 0,    //设置暗中同意列值

    >CREATE TABLE tb_name2 SELECT id,name FROM tb_name;

        >PRIMARY KEY(id)

        >id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,    //id值,无符号、非空、递增——唯一性,可做主键。

    将多表联结账和转账化为子查询语句

    >PRIMARY KEY(id)

    3、创立不时表:

        >)ENGINE=InnoDB    //设置表的仓库储存引擎,一般常用InnoDB和MyISAM;InnoDB可靠,帮衬专业;MyISAM高效不帮衬全文字笔迹核算索

        >name VARCHAR(60) NOT NULL

    SELECT QuotationNo,QuotationStatus FROM Quotations,Customers
    where Customers.CustomerState='销售机会'
    AND Customers.CustomerNo=Quotations.CustomerNo;
    
    SELECT QuotationNo,QuotationStatus FROM Quotations
    WHERE Quotations.CustomerNo IN(
    SELECT CustomerNo FROM Customers
    WHERE Customers.CustomerState='销售机会');--要求查询结果的所有列都在同一张表中才能与多表联结互相转化
    

    >)ENGINE=InnoDB    //设置表的储存引擎,一般常用InnoDB和MyISAM;InnoDB可信,扶助职业;MyISAM高效不支持全文字笔迹查验索

    >CREATE TEMPORARY TABLE tb_name(这里和开创普通表相同);

        >DEFAULT charset=utf8;  //设置暗中认可的编码,幸免数据库汉语乱码

        >score TINYINT UNSIGNED NOT NULL DEFAULT 0,    //设置默许列值

    表别名

    >DEFAULT charset=utf8;  //设置私下认可的编码,幸免数据库汉语乱码

    4、查看数据库中可用的表:

        假如有标准化的创建数据表还足以选取   >CREATE TABLE IF NOT EXISTS tb_name(........

        >PRIMARY KEY(id)

    SELECT Q.QuotationNo,Q.QuotationStatus,C.Class
    FROM Quotations Q,Customers C
    WHERE C.CustomerState='销售机会'
    AND Q.CustomerNo=C.CustomerNo;
    
    SELECT QuotationNo,QuotationStatus,Class
    FROM Quotations Q,Customers C
    WHERE Q.QuotationStatus='处理中'
    AND Q.CustomerNo=C.CustomerNo
    AND C.CustomerState='销售机会';
    

    借使有标准的创导数据表仍是可以利用  >CREATE TABLE IF NOT EXISTS tb_name(........

    >SHOW TABLES;

      2、复制表:

        >)ENGINE=InnoDB    //设置表的积累引擎,一般常用InnoDB和MyISAM;InnoDB可靠,支持工作;MyISAM高效不帮助全文字笔迹核准索

    自联结

    2、复制表:

    5、查看表的布局:

        >CREATE TABLE tb_name2 SELECT * FROM tb_name;

        >DEFAULT charset=utf8;  //设置暗许的编码,制止数据库汉语乱码

    SELECT C1.CustomerNo,C1.Class,C1.CustomerState
    FROM Customers C1,Customers C2
    WHERE C2.CustomerNo='CTM002'
    AND C1.Class=C2.Class;--列出所有和CTM002的Class一样的客户
    

    >CREATE TABLE tb_name2 SELECT * FROM tb_name;

    >DESCRIBE tb_name;

        大概某些复制:

        要是有原则的始建数据表还足以选用   >CREATE TABLE IF NOT EXISTS tb_name(........

    将方面包车型地铁自联结语句调换来子查询语句

    要么部分复制:

    也得以利用:

        >CREATE TABLE tb_name2 SELECT id,name FROM tb_name;

      2、复制表:

    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE Class=(
    SELECT Class FROM Customers
    WHERE CustomerNo='CTM002'
    );
    

    >CREATE TABLE tb_name2 SELECT id,name FROM tb_name;

    >SHOW COLUMNS in tb_name;     //from也可以

      3、创造有时表:

        >CREATE TABLE tb_name2 SELECT * FROM tb_name;

    构成查询UNION和UNION ALL

    3、创制不常表:

    6、删除表:

        >CREATE TEMPORARY TABLE tb_name(这里和创制普通表同样);

        可能局部复制:

    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE Class='C'
    UNION
    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE CustomerState='销售机会'---重复记录不显示
    
    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE Class='C'
    UNION ALL
    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE CustomerState='销售机会'
    ORDER BY 1,2;--重复记录显示
    

    >CREATE TEMPORARY TABLE tb_name(这里和制造普通表一样);

    >DROP [ TEMPORARY ] TABLE [ IF EXISTS ] tb_name[ ,tb_name2.......];

      4、查看数据库中可用的表:

        >CREATE TABLE tb_name2 SELECT id,name FROM tb_name;

    探寻在select1中留存而在select2中不设有的行

    4、查看数据库中可用的表:

    实例:

        >SHOW TABLES;

      3、创制一时表:

    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE Class='C'
    EXCEPT
    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE CustomerState='销售机会'
    ORDER BY 1,2;
    

    >SHOW TABLES;

    >DROP TABLE IF EXISTS tb_name;

      5、查看表的构造:

        >CREATE TEMPORARY TABLE tb_name(这里和创设普通表一样);

    搜寻在多个select语句中都存在的行

    5、查看表的结构:

    7、表重命名:

        >DESCRIBE tb_name;

      4、查看数据库中可用的表:

    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE Class='C'
    INTERSECT
    SELECT CustomerNo,Class,CustomerState
    FROM Customers
    WHERE CustomerState='销售机会'
    ORDER BY 1,2;
    

    >DESCRIBE tb_name;

    >RENAME TABLE name_old TO name_new;

        也足以动用:

        >SHOW TABLES;

    插入一条数据INSERT INTO

    也能够利用:

    还是能够运用:

        >SHOW COLUMNS in tb_name;     //from也可以

      5、查看表的组织:

    INSERT INTO Customers(cust_id,
    cust_name,
    cust_address,
    cust_city,
    cust_state,
    cust_zip,
    cust_country,
    cust_contact,
    cust_email
    )
    VALUES('2018062501',
    'AMY',
    '北仑红联渡口路29号',
    '宁波',
    'OENW',
    '28193',
    'China',
    NULL,
    '277816@qq.com'
    );
    SELECT * FROM Customers;
    

    >SHOW COLUMNS in tb_name;     //from也可以

    >ALTER TABLE name_old RENAME name_new;

      6、删除表:

        >DESCRIBE tb_name;

    INSERT INTO 的新用法:插入检索出的数额

    6、删除表:

    四、修改表:

        >DROP [ TEMPORARY ] TABLE [ IF EXISTS ] tb_name[ ,tb_name2.......];

        也足以利用:

    INSERT INTO CustNew(
    cust_id,
    cust_name,
    cust_address,
    cust_city,
    cust_state,
    cust_zip,
    cust_country,
    cust_contact,
    cust_email
    )
    SELECT* FROM Customers;
    
    
    INSERT INTO CustNew(
    cust_id,
    cust_name,
    cust_address,
    cust_city,
    cust_state,
    cust_zip,
    cust_country,
    cust_contact,
    cust_email
    )
    SELECT* FROM Customers;
    

    >DROP [ TEMPORARY ] TABLE [ IF EXISTS ] tb_name[ ,tb_name2.......];

    1、改动表结构:

        实例:

        >SHOW COLUMNS in tb_name;     //from也可以

    动用INSERT SELECT三回插入多行

    实例:

    >ALTER TABLE tb_name ADD[CHANGE,RENAME,DROP] ...要改变的内容...

        >DROP TABLE IF EXISTS tb_name;

      6、删除表:

    INSERT INTO CustNew(
    cust_id,
    cust_name,
    cust_address,
    cust_city,
    cust_state,
    cust_zip,
    cust_country,
    cust_contact,
    cust_email
    )
    SELECT* FROM Customers--不管SELECT出多少行都会被插入
    WHERE NOT cust_id='2018062501';--排除掉已插入的行,不然会提示主键重复,语句结束
    SELECT* FROM CustNew;
    

    >DROP TABLE IF EXISTS tb_name;

    实例:

      7、表重命名:

        >DROP [ TEMPORARY ] TABLE [ IF EXISTS ] tb_name[ ,tb_name2.......];

    自动成立一个新表并完全复制另一个表的数码

    7、表重命名:

    >ALTER TABLE tb_name ADD COLUMN address varchar(80) NOT NULL;
    >ALTER TABLE tb_name DROP address;
    >ALTER TABLE tb_name CHANGE score score SMALLINT(4) NOT NULL;

        >RENAME TABLE name_old TO name_new;

        实例:

    SELECT* INTO CustCopy
    FROM Customers;--这条语句自动创建CustCopy表并将Customers表中的数据完全复制并填充过去
    

    >RENAME TABLE name_old TO name_new;

    五、插入数据:

        还能利用:

        >DROP TABLE IF EXISTS tb_name;

    更新表中数据

    还是能够动用:

    1、插入数据:

        >ALTER TABLE name_old RENAME name_new;

      7、表重命名:

    UPDATE CustCopy
    SET cust_email='chenlili@intersky.com.cn',
    cust_city='广西',
    cust_name='陈莉莉'
    WHERE cust_id='2018062503';
    SELECT *FROM CustCopy;
    

    >ALTER TABLE name_old RENAME name_new;

    >INSERT INTO tb_name(id,name,score)VALUES(NULL,'张三',140),(NULL,'张四',178),(NULL,'张五',134);

    三、修改表:

        >RENAME TABLE name_old TO name_new;

    用表1的数码更新表2的数码

    三、修改表:

    此地的插入多条数据直接在前边加上逗号,直接写入插入的数量即可;主键id是自增的列,能够不用写。

      1、改动表结构:

        还足以行使:

    ALTER TABLE CustNew ADD te VARCHAR(20);--在CustNew表中新建te列
    UPDATE CustNew SET CustNew.te=CustCopy.cust_name
    FROM CustCopy,CustNew
    WHERE CustNew.cust_id=CustCopy.cust_id;--用CustCopy表中的cust_name列值更新CustNew表中的te列,条件是两表cust_id相等
    

    1、改换表结构:

    2、插入检索出来的数额:

        >ALTER TABLE tb_name ADD[CHANGE,RENAME,DROP] ...要改造的内容...

        >ALTER TABLE name_old RENAME name_new;

    除去某些列的值能够将它设置为NULL

    >ALTER TABLE tb_name ADD[CHANGE,RENAME,DROP] ...要改动的内容...

    >INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;

        实例:

    三、修改表:

    UPDATE CustCopy
    SET cust_address=NULL
    WHERE cust_id='2018062502';
    SELECT * FROM CustCopy;
    

    实例:

    六、更新数据:

        >ALTER TABLE tb_name ADD COLUMN address varchar(80) NOT NULL;

      1、更换表结构:

    删除表的某一行

    >ALTER TABLE tb_name ADD COLUMN address varchar(80) NOT NULL;

    1、钦定更新数据:

        >ALTER TABLE tb_name DROP address;

        >ALTER TABLE tb_name ADD[CHANGE,RENAME,DROP] ...要改造的内容...

    DELETE FROM CustCopy
    WHERE cust_id='2018062504'
    

    >ALTER TABLE tb_name DROP address;

    >UPDATE tb_name SET score=189 WHERE id=2;
    >UPDATE tablename SET columnName=NewValue [ WHERE condition ]

        >ALTER TABLE tb_name CHANGE score score SMALLINT(4) NOT NULL;

        实例:

    TRUNCATE TABLE删除表

    >ALTER TABLE tb_name CHANGE score score SMALLINT(4) NOT NULL;

    七、删除数据:

    四、插入数据:

        >ALTER TABLE tb_name ADD COLUMN address varchar(80) NOT NULL;

    利用TRUNCATE TABLE能够赶快删除表中的持有记录,并且无日志记录。与DELETE对比,速度越来越快,使用的系统财富和专门的学业日志财富更加少。 使用DELETE语句,系统一次一行地拍卖要刨除的表中的记录,并在事务管理日志中著录相关删除操作。 使用TRUNCATE TABLE语句叁次性完结删除与表有关的具有数据页的操作,且不立异事务管理日志,无法用ROLLBACK回滚。

    四、插入数据:

    1、删除数据:

      1、插入数据:

        >ALTER TABLE tb_name DROP address;

    TRUNCATE TABLE a;--删除表a中的所有数据
    

    1、插入数据:

    >DELETE FROM tb_name WHERE id=3;

        >INSERT INTO tb_name(id,name,score)VALUES(NULL,'张三',140),(NULL,'张四',178),(NULL,'张五',134);

        >ALTER TABLE tb_name CHANGE score score SMALLINT(4) NOT NULL;

     

    >INSERT INTO tb_name(id,name,score)VALUES(NULL,'张三',140),(NULL,'张四',178),(NULL,'张五',134);

    八、条件决定:

        这里的插入多条数据间接在前面加上逗号,直接写入插入的数码就能够;主键id是自增的列,能够不用写。

    四、插入数据:

    创建表

    此间的插入多条数据直接在前边加上逗号,直接写入插入的数码就可以;主键id是自增的列,能够不用写。

    1、WHERE 语句:

      2、插入检索出来的数据:

      1、插入数据:

    CREATE TABLE Products(
    prod_id CHAR(10) NOT NULL,
    vend_id CHAR(10) NOT NULL,
    prod_name CHAR(254) NOT NULL,
    prod_price DECIMAL(8,2) NOT NULL,
    prod_desc VARCHAR(1000) NULL
    );
    
    CREATE TABLE Orders(
    order_num INTEGER NOT NULL,
    order_date DATETIME NOT NULL,
    cust_id CHAR(10) NOT NULL
    );
    
    CREATE TABLE Vendors(
    vend_id CHAR(10) NOT NULL,
    vend_name CHAR(50) NOT NULL,
    vend_address CHAR(50),
    vend_city CHAR(50),
    vend_state CHAR(5),
    vend_zip CHAR(10),
    vend_country CHAR(50)
    );--不填写NULL和NOT NULL时默认为NULL
    

    2、插入检索出来的数额:

    >SELECT * FROM tb_name WHERE id=3;

        >INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;

        >INSERT INTO tb_name(id,name,score)VALUES(NULL,'张三',140),(NULL,'张四',178),(NULL,'张五',134);

    新建表并钦命暗许值DEFAULT

    >INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;

    2、HAVING 语句:

    五、更新数据:

        这里的插入多条数据直接在前面加上逗号,间接写入插入的多少就可以;主键id是自增的列,能够不用写。

    CREATE TABLE OrderItems(
    order_num INTEGER NOT NULL,
    order_item INTEGER NOT NULL,
    prod_id CHAR(10) NOT NULL,
    quantity INTEGER NOT NULL DEFAULT 1,
    item_price DECIMAL(8,2) NOT NULL
    );
    

    五、更新数据:

    >SELECT * FROM tb_name GROUP BY score HAVING count(*)>2

      1、钦赐更新数据:

      2、插入检索出来的多寡:

    更新表ALTER TABLE

    1、内定更新数据:

    3、相关准绳调整符:

        >UPDATE tb_name SET score=189 WHERE id=2;

        >INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;

    ALTER TABLE Vendors
    ADD vend_phone CHAR(20);
    SELECT * FROM Vendors;
    
    ALTER TABLE Vendors
    DROP COLUMN vend_phone;
    
    ALTER TABLE Vendors
    ADD PRIMARY KEY(vend_id);--给vend_id设置主键
    

    >UPDATE tb_name SET score=189 WHERE id=2;

    =、>、<、<>、IN(1,2,3......)、BETWEEN a AND b、NOT
    AND 、OR
    Like()用法中      %  为合营任意、  _  相称二个字符(可以是汉字)
    IS NULL 空值检查实验

        >UPDATE tablename SET columnName=NewValue [ WHERE condition ]

    五、更新数据:

    去除整张表及其表结构

    >UPDATE tablename SET columnName=NewValue [ WHERE condition ]

    九、MySQL的正则表达式:

    六、删除数据:

      1、钦定更新数据:

    DROP TABLE CustNew;
    

    六、删除数据:

    1、Mysql协助REGEXP的正则表达式:

      1、删除数据:

        >UPDATE tb_name SET score=189 WHERE id=2;

    --重命名表

    1、删除数据:

    >SELECT * FROM tb_name WHERE name REGEXP '^[A-D]'   //寻觅以A-D 为始发的name

        >DELETE FROM tb_name WHERE id=3;

        >UPDATE tablename SET columnName=NewValue [ WHERE condition ]

    EXEC sp_rename 'Orders','testi21';
    EXEC sp_rename 'testi21','Orders';
    
    SELECT *FROM Orders;
    GO;
    

    >DELETE FROM tb_name WHERE id=3;

    2、特殊字符须要转义。

    七、条件决定:

    六、删除数据:

    开创视图CREATE VIEW view_name AS...

    七、条件决定:

    十、MySQL的局地函数:

      1、WHERE 语句:

      1、删除数据:

    CREATE VIEW ProductCustomers AS
    SELECT cust_name,cust_contact,prod_id
    FROM Customers,Orders,OrderItems
    WHERE Customers.cust_id=Orders.cust_id
    AND Orders.order_num=OrderItems.order_num;
    GO;
    
    SELECT * FROM ProductCustomers;
    

    1、WHERE 语句:

    1、字符串链接——CONCAT()

        >SELECT * FROM tb_name WHERE id=3;

        >DELETE FROM tb_name WHERE id=3;

    删除视图

    >SELECT * FROM tb_name WHERE id=3;

    >SELECT CONCAT(name,'=>',score) FROM tb_name

      2、HAVING 语句:

    七、条件决定:

    SELECT * FROM ProductCustomers
    WHERE prod_id='0001';
    DROP VIEW ProductCustomers;
    

    2、HAVING 语句:

    2、数学函数:

        >SELECT * FROM tb_name GROUP BY score HAVING count(*)>2

      1、WHERE 语句:

    积累进度(类似自定义函数)

    >SELECT * FROM tb_name GROUP BY score HAVING count(*)>2

    AVG、SUM、MAX、MIN、COUNT;

      3、相关规范调节符: 

        >SELECT * FROM tb_name WHERE id=3;

    SELECT *FROM Customers;
    --输出Customers表中所有cust_contact为空的用户个数,利用存储过程结果应该为2;
    GO;
    
    CREATE PROCEDURE CusCount
    @custc INTEGER OUT--带输出参数的存储过程
    AS
    SELECT @custc=COUNT(*) FROM Customers
    WHERE cust_contact IS NULL;
    RETURN @custc;
    GO;
    

    3、相关规范调控符:

    3、文本管理函数:

        =、>、<、<>、IN(1,2,3......)、BETWEEN a AND b、NOT

      2、HAVING 语句:

    新建无参数的囤积进度

    =、>、<、<>、IN(1,2,3......)、BETWEEN a AND b、NOT

    TRIM、LOCATE、UPPER、LOWER、SUBSTRING

        AND 、OR

        >SELECT * FROM tb_name GROUP BY score HAVING count(*)>2

    CREATE PROCEDURE MailingListCount AS
    DECLARE @cnt INTEGER
    SELECT @cnt=COUNT(*) FROM Customers
    WHERE NOT cust_contact IS NULL;
    RETURN @cnt;
    GO;
    

    AND 、OR

    4、运算符:

        Linke()用法中      %  为同盟大肆、  _  相配贰个字符(能够是汉字)

      3、相关标准调整符: 

    调用带输出参数的蕴藏进度

    Linke()用法中      %  为合作任意、  _  相称三个字符(能够是汉字)

    、-、*、

        IS NULL 空值检查评定

        =、>、<、<>、IN(1,2,3......)、BETWEEN a AND b、NOT

    DECLARE @tt INTEGER
    EXEC CusCount @tt OUTPUT;
    SELECT @tt AS Ccount;
    

    IS NULL 空值检查评定

    5、时间函数:

     八、MySQL的正则表明式:

        AND 、OR

    调用无参数的蕴藏进度

    八、MySQL的正则表达式:

    DATE()、CURTIME()、DAY()、YEAR()、NOW().....

      1、Mysql援救REGEXP的正则表明式:

        Linke()用法中      %  为合营自便、  _  相称多少个字符(能够是汉字)

    DECLARE @ReturnValue INT
    EXEC @ReturnValue=MailingListCount;
    SELECT @ReturnValue AS Ccount;
    GO
    

    1、Mysql援救REGEXP的正则表达式:

    十一、分组查询:

        >SELECT * FROM tb_name WHERE name REGEXP '^[A-D]'   //寻觅以A-D 为初阶的name

        IS NULL 空值检查实验

    事务管理TRANSACTION

    >SELECT * FROM tb_name WHERE name REGEXP '^[A-D]'  //找寻以A-D 为发端的name

    1、分组查询能够依据钦赐的列举行分组:

      2、特殊字符须要转义。

     八、MySQL的正则表明式:

    BEGIN TRANSACTION
    DELETE FROM Orders;
    ROLLBACK TRANSACTION;
    GO;
    
    /*
    SELECT *FROM Orders;
    INSERT INTO Orders VALUES(
    '2819','2018-06-25 00:00:00.000','2018062501');
    INSERT INTO Orders VALUES(
    '2817','2018-06-25 00:00:00.000','2018062502');
    INSERT INTO Orders VALUES(
    '2818','2018-06-25 00:00:00.000','2018062503');*/
    

    2、特殊字符需求转义。

    >SELECT COUNT(*) FROM tb_name GROUP BY score HAVING COUNT(*)>1;

     九、MySQL的部分函数:

      1、Mysql援助REGEXP的正则表达式:

    事务管理,COMMIT显式提交

    九、MySQL的一对函数:

    2、条件使用Having;

      1、字符串链接——CONCAT()

        >SELECT * FROM tb_name WHERE name REGEXP '^[A-D]'   //寻找以A-D 为开头的name

    BEGIN TRANSACTION
    DELETE FROM Orders WHERE cust_id='2018062501'
    DELETE FROM Customers WHERE cust_id='2018062501' 
    COMMIT TRANSACTION--这两行语句要不一起提交,要不全部不提交,不存在部分执行完成。
    

    1、字符串链接——CONCAT()

    3、ORDER BY 排序:

        >SELECT CONCAT(name,'=>',score) FROM tb_name

      2、特殊字符必要转义。

    丰盛保留点SAVE TRANSACTION和回滚至保留点ROLLBACK TRANSACTION

    >SELECT CONCAT(name,'=>',score) FROM tb_name

    O摩尔根Plus 4DEXC90 BY DESC|ASC    =>按数量的降序和升序排列

      2、数学函数:

     九、MySQL的有的函数:

    BEGIN TRANSACTION
    SELECT *FROM Orders;
    DELETE FROM Orders;
    INSERT INTO Orders VALUES(
    '2819','2018-06-25 00:00:00.000','2018062501');
    SAVE TRANSACTION insert1;
    INSERT INTO Orders VALUES(
    '2817','2018-06-25 00:00:00.000','2018062502');
    SAVE TRANSACTION insert2;
    INSERT INTO Orders VALUES(
    '2818','2018-06-25 00:00:00.000','2018062503');
    SAVE TRANSACTION insert3;
    ROLLBACK TRANSACTION insert2;--回滚至保留点insert2
    

    2、数学函数:

    十二、UNION准绳——能够实行三个语句(能够去除重复行)

        AVG、SUM、MAX、MIN、COUNT;

      1、字符串链接——CONCAT()

    游标的概念和平运动用

    AVG、SUM、MAX、MIN、COUNT;

    十三、全文字笔迹核算索——MATCH和AGAINST

      3、文本管理函数:

        >SELECT CONCAT(name,'=>',score) FROM tb_name

    1 DECLARE CustCursor SCROLL CURSOR
    2 FOR
    3 SELECT cust_id FROM Customers
    4 WHERE cust_contact IS NULL;--定义游标CustCursor
    5 OPEN CustCursor;--打开游标
    

    3、文本管理函数:

    1、SELECT MATCH(note_text)AGAINST('PICASO') FROM tb_name;
    2、InnoDB引擎不援助全文字笔迹核查索,MyISAM能够;

        TRIM、LOCATE、UPPER、LOWER、SUBSTRING

      2、数学函数:

    如何使用叁个已开发的游标

    TRIM、LOCATE、UPPER、LOWER、SUBSTRING

    十四、视图

      4、运算符:

        AVG、SUM、MAX、MIN、COUNT;

    DECLARE @cursor CHAR(10);--定义参数cursor
    FETCH FIRST FROM CustCursor INTO @cursor;--将游标的值传入该参数
    SELECT @cursor AS Cursortest;--将参数输出并取别名为Cursortest
    

    4、运算符:

    1、创立视图

         、-、*、

      3、文本管理函数:

    剔除游标

    、-、*、

    >CREATE VIEW name AS SELECT * FROM tb_name WHERE ~~ ORDER BY ~~;

      5、时间函数:

        TRIM、LOCATE、UPPER、LOWER、SUBSTRING

    1 CLOSE CustCursor;
    2 DEALLOCATE CustCursor;--释放游标占用的资源
    

    5、时间函数:

    2、视图的特殊功效:

        DATE()、CURTIME()、DAY()、YEAR()、NOW().....

      4、运算符:

    游标的轮转实例

    DATE()、CURTIME()、DAY()、YEAR()、NOW().....

    a、简化表之间的探访(把联结写在select中);

     十、分组查询:

         、-、*、

    DECLARE CustCursor SCROLL CURSOR
    FOR
    SELECT cust_id FROM Customers
    WHERE cust_contact IS NULL;
    OPEN CustCursor;
    DECLARE @cursor1 CHAR(10);
    FETCH NEXT FROM CustCursor INTO @cursor1
    WHILE (@@FETCH_STATUS=0)--游标的循环
    BEGIN
    FETCH NEXT FROM CustCursor INTO @cursor1--将游标指向下一个值
    END
    SELECT @cursor1 AS TT;
    

    十、分组查询:

    b、重新格式化输出检索的多寡(TWranglerIM,CONCAT等函数);

       1、分组查询能够服从钦赐的列进行分组:

      5、时间函数:

    关闭游标并释放财富

    1、分组查询能够遵守钦命的列实行分组:

    c、过滤不想要的多少(select部分)

        >SELECT COUNT(*) FROM tb_name GROUP BY score HAVING COUNT(*)>1;

        DATE()、CURTIME()、DAY()、YEAR()、NOW().....

    CLOSE CustCursor;
    DEALLOCATE CustCursor;
    

    >SELECT COUNT(*) FROM tb_name GROUP BY score HAVING COUNT(*)>1;

    d、使用视图总结字段值,如集中那样的值。

      2、条件使用Having;

     十、分组查询:

    主键与外键

    2、条件使用Having;

    十五、使用存款和储蓄进度:

      3、ORDER BY 排序:

       1、分组查询能够遵守钦赐的列实行分组:

    ALTER TABLE Products
    ADD PRIMARY KEY(prod_id);--用ALTER语句添加主键
    

    3、ORDER BY 排序:

    私家知道,存款和储蓄进程正是多个自定义函数,有部分变量参数,可传唱参数,能够再次来到值,可是那语法够愚昧的~~~

        OPRADODECR-V BY DESC|ASC    =>按数据的降序和升序排列

        >SELECT COUNT(*) FROM tb_name GROUP BY score HAVING COUNT(*)>1;

    用ALTEEvoque设置外键

    O奥迪Q7DE大切诺基 BY DESC|ASC    =>按数据的降序和升序排列

    1、创制存款和储蓄进程:

    十一、UNION准绳——能够举行八个语句(能够去除重复行)

      2、条件使用Having;

    ALTER TABLE Orders
    ALTER COLUMN cust_id NCHAR(10);--两个表数据类型不同设置外键会报错,因此先更改外键字段的数据类型
    
    ALTER TABLE Orders
    ADD CONSTRAINT FK_ord--将Orders.cust_id用CONSTRAINT关键字设置唯一约束
    FOREIGN KEY(cust_id)
    REFERENCES Customers(cust_id)
    GO
    

    十一、UNION准绳——能够执行五个语句(可以去除重复行)

    >CREATE PROCEDURE pro(
    >IN num INT,OUT total INT)
    >BEGIN
    >SELECT SUM(score) INTO total FROM tb_name WHERE id=num;
    >END;

     十二、全文检索——MATCH和AGAINST

      3、ORDER BY 排序:

    用ALTERAV4语句设置独一约束

    十二、全文字笔迹查验索——MATCH和AGAINST

    ***此间的  IN (传递三个值给存储进程),OUT(从存款和储蓄进程传出四个值),INOUT(对存储进度传入、传出),INTO(保存变量)

      1、SELECT MATCH(note_text)AGAINST('PICASO') FROM tb_name;

        O奥迪Q7DEXC60 BY DESC|ASC    =>按数据的降序和升序排列

    ALTER TABLE Vendors
    ADD UNIQUE(Vend_id);
    

    1、SELECT MATCH(note_text)AGAINST('PICASO') FROM tb_name;

    2、调用存款和储蓄进度:

      2、InnoDB引擎不帮助全文字笔迹查验索,MyISAM可以;

    十一、UNION法则——能够进行三个语句(能够去除重复行)

    用ALTEEscort语句设置检查约束

    2、InnoDB引擎不援救全文检索,MyISAM能够;

    >CALL pro(13,@total)      //这里的存款和储蓄进度多个变量,三个是IN二个是OUT,这里的OUT也是急需写上的,不写会出错
    >SELECT @total         //这里就能够看来结果了;

     十三、视图

     十二、全文字笔迹核查索——MATCH和AGAINST

    ALTER TABLE Products
    ADD CHECK(prod_price>0);
    

    十三、视图

    3、存款和储蓄进度的其他操作:

      1、成立视图

      1、SELECT MATCH(note_text)AGAINST('PICASO') FROM tb_name;

    增多索引,系统基于目录火速查询数据

    1、创立视图

    >SHOW PROCEDURE STATUS;      //展现当期的囤积进度
    >DROP PROCEDURE pro;         //删除钦命期存款款和储蓄进度

        >CREATE VIEW name AS SELECT * FROM tb_name WHERE ~~ ORDER BY ~~;

      2、InnoDB引擎不援助全文字笔迹核查索,MyISAM能够;

    CREATE INDEX prod_name_int
    ON Products(prod_name);
    SELECT *FROM Products WHERE prod_name='莫匹罗星软膏';
    GO;
    

    >CREATE VIEW name AS SELECT * FROM tb_name WHERE ~~ ORDER BY ~~;

    十六、使用游标:

      2、视图的特殊功效:

     十三、视图

    创设触发器

    2、视图的特殊成效:

    对这些通晓不是很懂,朋友多多教导哦~~~

          a、简化表之间的合併(把联结写在select中);

      1、成立视图

    CREATE TRIGGER cust_state
    ON Customers
    FOR INSERT,UPDATE
    AS
    UPDATE Customers
    SET cust_state=UPPER(cust_state)
    WHERE Customers.cust_id=(SELECT cust_id from inserted);--当Customers.cust_state发生INSERT,UPDATE操作时,触发器将自动把cust_state字段内容从小写变成大写
    

    a、简化表之间的联合(把联结写在select中);

    1、游标的操作

          b、重新格式化输出检索的多少(T福睿斯IM,CONCAT等函数);

        >CREATE VIEW name AS SELECT * FROM tb_name WHERE ~~ ORDER BY ~~;

    触发器测量试验

    b、重新格式化输出检索的数码(TEvoqueIM,CONCAT等函数);

    >CREATE PROCEDURE pro()
    >BEGIN
    >DECLARE ordername CURSOR FOR
    >SELECT order_num FROM orders;
    >END;
    >OPEN ordername;    //张开游标
    >CLOSE ordername;    //关闭游标

          c、过滤不想要的数额(select部分)

      2、视图的特殊功用:

    INSERT INTO Customers(
    cust_id,
    cust_name,
    cust_address,
    cust_city,
    cust_state,
    cust_email
    )VALUES(
    '2018062506',
    'Lily',
    '世纪大道333号',
    '北京',
    'ienwoho',
    '783428@qq.com'
    );
    SELECT *FROM Customers;
    

    c、过滤不想要的数目(select部分)

    十七、触发器:

          d、使用视图计算字段值,如聚焦那样的值。

          a、简化表之间的联合(把联结写在select中);

     

    d、使用视图总结字段值,如聚集那样的值。

    触发器是指在扩充某项钦赐操作时,触发触发器内钦点的操作;

     十四、使用存款和储蓄进程:

          b、重新格式化输出检索的多寡(T昂CoraIM,CONCAT等函数);

    十四、使用存储进度:

    1、扶助触发器的语句有DELETE、INSERT、UPDATE,其余均不扶助

      个人驾驭,存款和储蓄进程正是一个自定义函数,有部分变量参数,可传唱参数,可以重临值,但是那语法够工巧的~~~

          c、过滤不想要的数据(select部分)

    民用精通,存款和储蓄进度就是贰个自定义函数,有点变量参数,可传唱参数,能够再次来到值,可是那语法够愚笨的~~~

    2、创立触发器:

      1、成立存款和储蓄进度:

          d、使用视图总结字段值,如集中那样的值。

    1、创制存款和储蓄进程:

    >CREATE TRIGGER trig AFTER INSERT ON ORDERS FOR EACH ROW SELECT NEW.orser_name;
    >INSERT语句,触发语句,重返三个值

        >CREATE PROCEDURE pro(

     十四、使用存款和储蓄进程:

    >CREATE PROCEDURE pro(

    3、删除触发器

        >IN num INT,OUT total INT)

      个人精晓,存款和储蓄进度便是一个自定义函数,有部分变量参数,可传唱参数,能够再次回到值,不过那语法够愚蠢的~~~

    >IN num INT,OUT total INT)

    >DROP TRIGGER trig;

        >BEGIN

      1、创立存款和储蓄进程:

    >BEGIN

    十八、语法整理:

        >SELECT SUM(score) INTO total FROM tb_name WHERE id=num;

        >CREATE PROCEDURE pro(

    >SELECT SUM(score) INTO total FROM tb_name WHERE id=num;

    1、ALTER TABLE(修改表)

        >END;

        >IN num INT,OUT total INT)

    >END;

    ALTER TABLE table_name

    (  ADD    column  datatype    [ NULL | NOT NULL ]  [ CONSTRAINTS ]
    CHANGE  column   datatype   COLUMNS  [ NULL | NOT NULL ]   [ CONSTRAINTS ]
    DROP    column,
    。。。。
    )

       ***此间的  IN (传递多少个值给存款和储蓄进度),OUT(从存款和储蓄进度传出一个值),INOUT(对存款和储蓄过程传入、传出),INTO(保存变量)

        >BEGIN

    ***此处的  IN (传递三个值给存款和储蓄进程),OUT(从存款和储蓄进度传出一个值),INOUT(对存款和储蓄进度传入、传出),INTO(保存变量)

    2、COMMIT(处总管务)

      2、调用存款和储蓄进程:

        >SELECT SUM(score) INTO total FROM tb_name WHERE id=num;

    2、调用存款和储蓄进度:

    >COMMIT;

        >CALL pro(13,@total)      //这里的积累进度多少个变量,叁个是IN三个是OUT,这里的OUT也是内需写上的,不写会出错

        >END;

    >CALL pro(13,@total)      //这里的积攒进程三个变量,贰个是IN七个是OUT,这里的OUT也是须求写上的,不写会出错

    3、CREATE INDEX(在八个或四个列上创立索引)

        >SELECT @total         //这里就足以看来结果了;

       ***那边的  IN (传递二个值给存款和储蓄进程),OUT(从存款和储蓄进度传出多少个值),INOUT(对存款和储蓄进度传入、传出),INTO(保存变量)

    >SELECT @total         //这里就能够见见结果了;

    CREATE INDEX index_name ON tb_name (column [ ASC | DESC ] , .......);

      3、存款和储蓄进度的其他操作:

      2、调用存储进程:

    3、存款和储蓄进程的另外操作:

    4、CREATE PROCEDURE (创制存款和储蓄进度)

        >SHOW PROCEDURE STATUS;      //呈现当期的仓库储存进程

        >CALL pro(13,@total)      //这里的存放进度多少个变量,八个是IN贰个是OUT,这里的OUT也是要求写上的,不写会出错

    >SHOW PROCEDURE STATUS;      //彰显当期的积累进程

    CREATE PROCEDURE pro([ parameters ])
    BEGIN
    ........
    END

        >DROP PROCEDURE pro;         //删除内定期存款储进度

        >SELECT @total         //这里即可见见结果了;

    >DROP PROCEDURE pro;         //删除钦点期存款款和储蓄进度

    5、CREATE TABLE(创建表)

    十五、使用游标:

      3、存款和储蓄进程的任何操作:

    十五、使用游标:

    CREATE TABLE tb_name(
    column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]   ,
    column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]   ,
    .......
    PRIMARY KEY( column_name )
    )ENGINE=[  InnoDB | MyiSAM ]DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

      对那一个精晓不是很懂,朋友多多指引哦~~~

        >SHOW PROCEDURE STATUS;      //彰显当期的积攒进度

    对这些明白不是很懂,朋友多多指引哦~~~

    6、CREATE USE中华V(成立顾客)

       1、游标的操作

        >DROP PROCEDURE pro;         //删除指定期存款款和储蓄进度

    1、游标的操作

    CREATE USER user_name [ @hostname ] [ IDENTIFIED BY [ PASSWORD ] 'pass_word' ];

        >CREATE PROCEDURE pro()

    十五、使用游标:

    >CREATE PROCEDURE pro()

    7、CREATE VIEW (在四个或四个表上创制视图)

        >BEGIN 

      对那一个掌握不是很懂,朋友多多辅导哦~~~

    >BEGIN

    CREATE [ OR REPLACE ] VIEW view_name AS SELECT。。。。。。

        >DECLARE ordername CURSOR FOR

       1、游标的操作

    >DECLARE ordername CURSOR FOR

    8、DELETE (从表中删除一行或多行)

        >SELECT order_num FROM orders;

        >CREATE PROCEDURE pro()

    >SELECT order_num FROM orders;

    DELETE FROM table_name [WHERE ......]

        >END;

        >BEGIN 

    >END;

    9、DROP(恒久删除数据库及对象,如视图、索引等)

        

        >DECLARE ordername CURSOR FOR

    >OPEN ordername;    //展开游标

    DROP DATEBASE | INDEX | PROCEDURE | TABLE | TRIGGER | USER | VIEW  name

        >OPEN ordername;    //展开游标

        >SELECT order_num FROM orders;

    >CLOSE ordername;    //关闭游标

    10、INSERT (给表增添行)

     

        >END;

    十六、触发器:

    INSERT INTO tb_name [ ( columns,...... ) ]  VALUES(value1,............);

        >CLOSE ordername;    //关闭游标

        

    触发器是指在进展某项钦点操作时,触发触发器内钦点的操作;

    使用SELECT值插入:

    十六、触发器:

        >OPEN ordername;    //展开游标

    1、扶助触发器的语句有DELETE、INSERT、UPDATE,别的均不协理

    INSERT INTO tb_name [ ( columns,...... ) ]
    SELECT columns , .......   FROM tb_name [ WHERE ...... ] ;

      触发器是指在进展某项钦赐操作时,触发触发器内钦定的操作;

     

    2、创立触发器:

    11、ROLLBACK(撤废多少个事务管理块)

      1、帮助触发器的语句有DELETE、INSERT、UPDATE,其余均不扶助

        >CLOSE ordername;    //关闭游标

    >CREATE TRIGGER trig AFTER INSERT ON ORDERS FOR EACH ROW SELECT NEW.orser_name;

    ROLLBACK [  TO  savapointname  ];

      2、创造触发器:

    十六、触发器:

    >INSERT语句,触发语句,重返贰个值

    12、SAVEPOINT(为ROLLBACK设置保留点)

        >CREATE TRIGGER trig AFTER INSERT ON ORDERS FOR EACH ROW SELECT NEW.orser_name;

      触发器是指在开展某项钦命操作时,触发触发器内内定的操作;

    3、删除触发器

    SAVEPOINT sp1;

        >INSERT语句,触发语句,重临三个值

      1、帮助触发器的语句有DELETE、INSERT、UPDATE,其余均不帮忙

    >DROP TRIGGER trig;

    13、SELECT (检索数据,展现音讯)

      3、删除触发器

      2、创建触发器:

    十七、语法整理:

    SELECT column_name,.....FROM tb_name  [ WHERE ]   [ UNION ]    [ RROUP BY ]   [ HAVING ]   [ ORDER BY ]

        >DROP TRIGGER trig;

        >CREATE TRIGGER trig AFTER INSERT ON ORDERS FOR EACH ROW SELECT NEW.orser_name;

    1、ALTER TABLE(修改表)

    14、START TRANSACTION (三个新的事务管理块的上马)

    十七、语法整理:

        >INSERT语句,触发语句,重临三个值

    ALTER TABLE table_name

    START TRANSACTION

    新葡亰496net,  1、ALTER TABLE(修改表)

      3、删除触发器

    (  ADD    column  datatype    [ NULL | NOT NULL ]  [ CONSTRAINTS ]

    15、UPDATE(更新一个表中的一行或多行)

        ALTER TABLE table_name

        >DROP TRIGGER trig;

    CHANGE  column   datatype   COLUMNS  [ NULL | NOT NULL ]   [ CONSTRAINTS ]

    UPDATE tb_name SET column=value,......[ where ]

        (  ADD    column  datatype    [ NULL | NOT NULL ]  [ CONSTRAINTS ]

    十七、语法整理:

    DROP    column,

           CHANGE  column   datatype   COLUMNS  [ NULL | NOT NULL ]   [ CONSTRAINTS ]

      1、ALTER TABLE(修改表)

    。。。。

           DROP    column,

        ALTER TABLE table_name

    )

           。。。。

        (  ADD    column  datatype    [ NULL | NOT NULL ]  [ CONSTRAINTS ]

    2、COMMIT(处总管务)

        )

           CHANGE  column   datatype   COLUMNS  [ NULL | NOT NULL ]   [ CONSTRAINTS ]

    >COMMIT;

      2、COMMIT(处管事人务)

           DROP    column,

    3、CREATE INDEX(在二个或多个列上制造索引)

        >COMMIT;

           。。。。

    CREATE INDEX index_name ON tb_name (column [ ASC | DESC ] , .......);

       3、CREATE INDEX(在三个或六个列上创造索引)

        )

    4、CREATE PROCEDURE (成立存款和储蓄进程)

        CREATE INDEX index_name ON tb_name (column [ ASC | DESC ] , .......);

      2、COMMIT(处管事人务)

    CREATE PROCEDURE pro([ parameters ])

       4、CREATE PROCEDURE (创制存款和储蓄进度)

        >COMMIT;

    BEGIN

        CREATE PROCEDURE pro([ parameters ])

       3、CREATE INDEX(在三个或五个列上成立索引)

    ........

        BEGIN

        CREATE INDEX index_name ON tb_name (column [ ASC | DESC ] , .......);

    END

        ........

       4、CREATE PROCEDURE (创设存储过程)

    5、CREATE TABLE(创建表)

        END

        CREATE PROCEDURE pro([ parameters ])

    CREATE TABLE tb_name(

       5、CREATE TABLE(创建表)

        BEGIN

    column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]  ,

        CREATE TABLE tb_name(

        ........

    column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]  ,

        column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]   ,

        END

    .......

        column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]   ,

       5、CREATE TABLE(创建表)

    PRIMARY KEY( column_name )

        .......

        CREATE TABLE tb_name(

    )ENGINE=[  InnoDB | MyiSAM ]DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

        PRIMARY KEY( column_name )

        column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]   ,

    6、CREATE USECR-V(创建客户)

        )ENGINE=[  InnoDB | MyiSAM ]DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

        column_name  datetype  [ NULL | NOT NULL ]   [ condtraints]   ,

    CREATE USER user_name [ @hostname ] [ IDENTIFIED BY [ PASSWORD ] 'pass_word' ];

       6、CREATE USE昂Cora(创制顾客)

        .......

    7、CREATE VIEW (在一个或多少个表上成立视图)

        CREATE USER user_name [ @hostname ] [ IDENTIFIED BY [ PASSWORD ] 'pass_word' ];

        PRIMARY KEY( column_name )

    CREATE [ OR REPLACE ] VIEW view_name AS SELECT。。。。。。

       7、CREATE VIEW (在三个或八个表上创设视图)

        )ENGINE=[  InnoDB | MyiSAM ]DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

    8、DELETE (从表中删除一行或多行)

        CREATE [ OR REPLACE ] VIEW view_name AS SELECT。。。。。。

       6、CREATE USELAND(创立顾客)

    DELETE FROM table_name [WHERE ......]

       8、DELETE (从表中删除一行或多行)

        CREATE USER user_name [ @hostname ] [ IDENTIFIED BY [ PASSWORD ] 'pass_word' ];

    9、DROP(永远删除数据库及对象,如视图、索引等)

        DELETE FROM table_name [WHERE ......]

       7、CREATE VIEW (在二个或七个表上创建视图)

    DROP DATEBASE | INDEX | PROCEDURE | TABLE | TRIGGER | USER | VIEW  name

       9、DROP(恒久删除数据库及对象,如视图、索引等)

        CREATE [ OR REPLACE ] VIEW view_name AS SELECT。。。。。。

    10、INSERT (给表增加行)

        DROP DATEBASE | INDEX | PROCEDURE | TABLE | TRIGGER | USER | VIEW  name

       8、DELETE (从表中删除一行或多行)

    INSERT INTO tb_name [ ( columns,...... ) ]  VALUES(value1,............);

       10、INSERT (给表增多行)

        DELETE FROM table_name [WHERE ......]

    使用SELECT值插入:

        INSERT INTO tb_name [ ( columns,...... ) ]  VALUES(value1,............);

       9、DROP(永远删除数据库及对象,如视图、索引等)

    INSERT INTO tb_name [ ( columns,...... ) ]

        使用SELECT值插入:

        DROP DATEBASE | INDEX | PROCEDURE | TABLE | TRIGGER | USER | VIEW  name

    SELECT columns , .......  FROM tb_name [ WHERE ...... ] ;

        INSERT INTO tb_name [ ( columns,...... ) ]

       10、INSERT (给表增添行)

    11、ROLLBACK(撤消二个事务管理块)

        SELECT columns , .......   FROM tb_name [ WHERE ...... ] ;

        INSERT INTO tb_name [ ( columns,...... ) ]  VALUES(value1,............);

    ROLLBACK [  TO  savapointname  ];

       11、ROLLBACK(撤消一个事务管理块)

        使用SELECT值插入:

    12、SAVEPOINT(为ROLLBACK设置保留点)

        ROLLBACK [  TO  savapointname  ];

        INSERT INTO tb_name [ ( columns,...... ) ]

    SAVEPOINT sp1;

       12、SAVEPOINT(为ROLLBACK设置保留点)

        SELECT columns , .......   FROM tb_name [ WHERE ...... ] ;

    13、SELECT (检索数据,展现音讯)

        SAVEPOINT sp1;

       11、ROLLBACK(打消三个事务管理块)

    新葡亰496net:mysql常用语法操作,SQL必知必会。SELECT column_name,.....FROM tb_name  [ WHERE ]  [ UNION ]    [ RROUP BY ]  [ HAVING ]  [ ORDER BY ]

       13、SELECT (检索数据,彰显消息)

        ROLLBACK [  TO  savapointname  ];

    14、START TRANSACTION (二个新的事务管理块的启幕)

        SELECT column_name,.....FROM tb_name  [ WHERE ]   [ UNION ]    [ RROUP BY ]新葡亰496net:mysql常用语法操作,SQL必知必会。   [ HAVING ]   [ ORDER BY ]

       12、SAVEPOINT(为ROLLBACK设置保留点)

    START TRANSACTION

       14、START TRANSACTION (一个新的事务处理块的开始)

        SAVEPOINT sp1;

    15、UPDATE(更新贰个表中的一行或多行)

        START TRANSACTION

       13、SELECT (检索数据,展现消息)

    UPDATE tb_name SET column=value,......[ where ]

       15、UPDATE(更新一个表中的一行或多行)

        SELECT column_name,.....FROM tb_name  [ WHERE ]   [ UNION ]    [ RROUP BY ]   [ HAVING ]   [ ORDER BY ]

        UPDATE tb_name SET column=value,......[ where ]

       14、START TRANSACTION (一个新的事务管理块的开始)

        START TRANSACTION

       15、UPDATE(更新一个表中的一行或多行)

        UPDATE tb_name SET column=value,......[ where ]

     

    原来的书文地址:

    常用的Mysql数据库操作语句大全

    本文由新葡亰496net发布于网络数据库,转载请注明出处:新葡亰496net:mysql常用语法操作,SQL必知必会

    关键词: