zoukankan      html  css  js  c++  java
  • 【原创】MySql的语法及注意事项

    最近项目中要用到MySql数据库的相关操作,因为之前用C#写的项目中,用的比较多的就是SQL,Orale数据库,写SQL数据库的存储过程及测试语句,可能大家都比较熟,可是对于MySql写存储过程及语法,你又了解多少呢。

    C#操作MySQL数据库,可以使用开源类库mysql.data.dll,这个操作和SQL数据库的操作类比较相似,本章内容暂时不说这些内容。只说写MySql的一些语法及注意事项:

    本节内容如下:

    (1)MySql如何定义变量

    (2)MySql的注释怎么写

    (3)MySql如何存储过程(带返回参数) 

    (4)怎么样执行MySql存储过程(带返回参数)

    (5)MySql中的判断语句怎么写

    (6)执行MySql存储过程,中文写进数据库变成乱码

     我们开始吧。

    一:MySql如何定义变量

    对于SQL的开发人员,第一想到的就是Declare。可是MySQl是这样的吗,经测试,如果是写存储过程,里面可以用到Declare,而不是存储过程,只是写一些测试用例时应该使用Set关键字。例如:

    存储过程中定义变量

    CREATE  PROCEDURE `test`(
      username CHAR(20) 
    BEGIN 
     DECLARE nickID INT;

    不是存储过程定义变量:

    set @code =1;
    select @code;

    二:MySql的注释怎么写

    这个就比较简单了,可以通过三种方式

    1、#...
    2、"--  ..."   (--后面必须跟一个空格呀)
    3、/*...*/

    三:MySql如何存储过程(带返回参数) 

    写过SQL的人一定想到Out关键字,MySql也是一样。直接代码如下

    CREATE  PROCEDURE `test`(
      username CHAR(20) ,
      out Code INT)
    BEGIN 
     DECLARE nickID INT;

    四:怎么样执行MYSql存储过程(带返回参数)
    第一次用了SQL的方法进行,内容报错。就在网上查查。终于找到参考内容。我直接代码:

    call test('ywtest',@code);
    select @code;

    @code就是返回参数,不用定义,直接写,加上@就可以了。是不是很简单.
    五:MySql中的判断语句怎么写

    这个我也可想多说了,直接代码,一目了然。

                IF FOUND_ROWS() =0 THEN
                    BEGIN                    
                        SET Code=1000;-- 成功
                    END;
                ELSE
                    SET Code=1001;-- 失败
    END IF;

    结构不难看出。我已经标识为红色了。

    六:执行MySql存储过程,中文写进数据库变成乱码

    我在写完存储过程后,直接调用,存储过程的参数是char类型,我直接输入中文,保存到数据库竟然是乱码,这下慌了。网上查查,又是改字符集,又是改其它的都不行。最后解决办法很简单

    就是在存储过程的参数后面加上character set utf8即可。直接代码。

    CREATE  PROCEDURE `test`(
      username CHAR(20)  character set utf8,
      out Code INT)
    BEGIN 
     DECLARE nickID INT;

    好了,MySql的语法就说到这里,只是记录一下自己遇到的一些问题进行总结。

    转载请注原创地址,谢谢。

  • 相关阅读:
    python 输出时间格式化及前一天、前一秒时间
    python双色球选号生成
    python爬虫练习
    python爬虫之BeautifulSoup4介绍
    装饰器
    *args和**kwargs
    (二)python爬虫实例:猫眼电影TOP100榜并将电影信息写入到Excel(Excel列宽自适应)
    (一)python爬虫实例:猫眼电影TOP100榜并将电影信息写入到Excel
    python安装库时,pip install xxx下载慢以及超时失败的问题解决
    python之高阶函数map()reduce()filter()
  • 原文地址:https://www.cnblogs.com/yxhblog/p/2579593.html
Copyright © 2011-2022 走看看