zoukankan      html  css  js  c++  java
  • MySQL学习(二)——SQL语句创建删除修改以及中文乱码问题

    一、对数据库的操作

    1、创建一个库

    create database 库名;

    创建带有编码的:create database 库名 character set 编码;

    查看编码:show create database 库名;

    2、删除一个库

    drop database 库名;

    3、使用库

    use 库名;

    4、查看当前正在操作的库

    select database();

    二、对数据库表的操作

    1、创建一张表

    create table 表名(

      字段名 类型(长度) [约束],

      字段名 类型(长度) [约束],

      字段名 类型(长度) [约束]

    );

    2、查看数据库表

    show tables;

    查看表结构:desc 表名;

    3、删除一张表

    drop table 表名;

    4、修改表

    1)添加一列

    alter table 表名 add 字段名 类型(长度) [约束];

    eg. alter table user add uinfo varchar(32) not null;

    2)修改列的类型(长度、约束)

    alter table 表名 modify 要修改的字段名 类型(长度) [约束];

    eg. alter table user modify uinfo varchar(64) null;

    3)修改列的列名

    alter table 表名 change 旧列名 新列名 类型(长度) [约束];

    4)删除表的列

    alter table 表名 drop 列名;

    5)修改表名

    rename table 表名 to 新表名

    6)修改表的字符集

    alter table 表名 character set 编码;

    查看当前表的编码:show create table tbl_user;

    三、对数据库表记录进行操作(修改)

    1、插入记录

    1)insert into 表名(列名1,列名2,列名3......) value(值1,值2,值3......);

    eg. insert into tbl_user(uid,uname,upassword) value(null,'zhangsan','123');

    查看记录:select * from 表名;

    2)insert into 表名 value(值1,值2,值3......);

    3)插入数据中文乱码问题解决办法

    方式一:(不建议!)

    直接修改数据库安装目录里面的my.ini文件第57行(在MySQLMySQL Server 5.0目录下,若MySQL安装在C盘直接修改会拒绝访问,这时可以把my.ini文件剪切到其他盘,修改完之后再复制过来)

    default-character-set=utf8

    想让其生效,必须重新打开命令提示符,重启mysql(先net stop mysql 然后net start mysql 再登录)

    方式二:

    在命令提示符下输入mysql>set names gbk; 

    方式三:

    2、修改表记录

    1)不带条件的

    update 表名 set 字段名=值,字段名=值,字段名=值......

    它会将该列的所有记录都更改

    2)带条件

    update 表名 set 字段名=值,字段名=值,字段名=值......where 条件

    3、删除表记录

    1)带条件的

    delete from 表名 where 条件;

    注意,若删除uid=1的记录,删除后,uid不会重置 

    2)不带条件的

    删除操作:delete from 表名;

    3)面试题

    delete与truncate的区别?

    delete删除的时候是一条一条的删除记录,它配合事务,可以将删除的数据找回

    truncate删除,它是将整个表摧毁,然后再创建一张一模一样的表。它删除的数据无法找回

    Delete操作演示:

     Truncate操作演示:

    注意:delete删除,uid不会重置,而使用truncate操作,uid会重置(因为它删除了表结构,然后再创建一张一模一样的表,所以再次插入数据的数据的时候从1开始)

  • 相关阅读:
    Ubuntu中安装gdal python版本
    python中在计算机视觉中的库及基础用法
    Google earth爬取卫星影像数据并进行标注路网的方法
    事务
    文件的下载,随机验证码(无验证)登录注册
    类的加载器和反射
    等待唤醒机制,UDP通信和TCP通信
    线程池,多线程,线程异步,同步和死锁,Lock接口
    多线程, Thread类,Runnable接口
    转换流,缓冲流
  • 原文地址:https://www.cnblogs.com/cxq1126/p/7468888.html
Copyright © 2011-2022 走看看