MySQL 関連の SQL ステートメント、データベース、データ テーブル、フィールド、タイプ

記事ディレクトリ


序文

1.SQLステートメントでは大文字と小文字が区別されません。


MySQL整数型

シリアルナンバー データの種類 データ範囲
1 タイイント -128~127
2 スモールント -32768~32767
3 ミディアムミント -2 23~2 23-1
4 INT -2 31~2 31-1
5 BIGINT -2 63~2 63-1

MySQLの文字列型

シリアルナンバー データの種類 データ範囲 使用
1 CHAR(n) 0~255バイト 固定長の文字列
2 VARCHAR(n) 0~65535バイト 長い文字列
3 文章 0~65535バイト 長いテキストデータ
4 長文 0~2^32-1バイト 非常に大きなテキストデータ
5 BLOB 0~65535バイト バイナリの長いテキストデータ
6 肺ブロブ 0~2^32-1バイト バイナリの非常に大きなテキスト データ

MySQL 10 進数型

シリアルナンバー データの種類 データ使用量 データ範囲
1 浮く 浮動小数点(m,n) 有効数字 7 桁
2 ダブル ダブル(m,n) 有効数字 15 桁
3 10進数 10 進数(m,n) 有効数字 28 桁

m浮動小数点数の全長を示し、n小数点以下の有効桁数を示します。


MySQL の時間タイプ

シリアルナンバー データの種類 フォーマット 使用
1 日付 YYYY-MM-DD 日付
2 時間 時:MM:SS 時間
3 YYYY
4 日付時刻 YYYY-MM-DD HH:MM:SS 日時
5 タイムスタンプ 10 桁または 13 桁の整数 (秒数) タイムスタンプ

よく使用される基本的な SQL ステートメント

シリアルナンバー SQL文 使用 説明する シリアルナンバー SQL文 使用 説明する
1 mysql -u root -p 接続するMySQL コマンド ライン ウィンドウにコマンドを入力し、Enterキーを押してからパスワードをmysql -u root -p入力し(パスワードを見つけるのが面倒なので忘れないようにしてください)、Enter キーを押して接続します初期状態ではユーザーログインが使用されますが、仕事中ずっとユーザーログインを使用できるわけではありません権限が大きすぎるとリスクが大きいため、適切な権限を持つユーザーを作成した後は、そのユーザーに頻繁にログインしないでください。MySQLMySQLrootrootrootroot 2 create database test_db; データベースを作成する
3 show databases; すべてのデータベースを表示する 4 create database MyDB_two character set utf8; データベース作成時に文字コードを設定する character setと省略できますcharset
5 show create database MyDB_two; データベースのエンコード方式を表示する 6 alter database MyDB_one character set utf8; データベースのエンコーディングを変更する
7 use MyDB_one データベースの入力または切り替え データベースの入力または切り替えに使用しますuse [数据库名]初めて接続するときはMySQL、どのデータベースにもアクセスしていません。特定のデータベースを使用したい場合は、そのデータベースに入る必要があります。use [数据库名]このコマンドの後のセミコロンは省略できます。これはSQLステートメント内でセミコロンを省略できる唯一のステートメントです。 8 select database(); 現在のデータベースを表示 データベースにアクセスすると、select database();現在どのデータベースにいるかを確認できます。データベースを長時間運用する場合、多数のデータベースを切り替えて運用した後、現在のデータベースを確認し、誤ったデータベースを運用しないようにしてください。
9 show tables; 現在のデータベース内のテーブルを表示する 10 create table phone_table(pid INT, name CHAR(20), price INT); テーブルを作成する
11 show create table phone_table; テーブル情報を表示する テーブルのフィールド、エンジン、デフォルトの文字エンコーディングなどの情報をshow create table [表名];表示できますMySQLデータベース情報の表示と同様に、show作成したデータテーブルの情報のみが表示され、作成と同時に表示することはできません。 12 desc phone_table; テーブル情報をより直感的に表示
13 alter table phone_table add color CHAR(20); テーブルフィールドの追加 14 alter table phone_table drop price; テーブルフィールドを削除する
15 alter table phone_table modify name VARCHAR(12); テーブルフィールドのデータ型を変更する 16 alter table phone_table change name pname CHAR(18); テーブルフィールドのデータ型とフィールド名を変更する
17 drop table phone_table; テーブルの削除 18 ---

詳細

データベースの概念

1、结构化查询语言(Structured Query Language)简称SQL
2、数据库管理系统(Database Management System)简称DBMS
3、数据库管理员(Database Administration)简称DBA,功能是确保DBMS的正常高效运行。


SQL常用的3个部分

1、数据查询语言(DQL): 其语句也称“数据库检索语句”,用以从表中获得数据,保留字SELECT经常使用,DQL也是所有SQL中用的最多的,其他保留字还有WHEREORDER BYGROUP BYHAVING这些保留字还与DML一起使;
2、数据操作语言(DML): 其余局包括动词INSERTUPDATEDELETE。他们分别用于添加,修改和删除表中的行。也称动作语言;
3、数据定义语言(DDL): DDL主要用于操作数据库。


SQL与JAVA的数据类型对比

MySQL Java
INT int
BIGINT long
DECIMAL BigDecimal
DATE/DATETIME java.util.Date
VARCHAR String

数据库的启停操作

MySQL在系统启动时,会自动启动服务,无需手动启动了。
当然也可以手动启动或停止服务,以管理员身份运行cmd执行如下指令即可。


停止服务

net stop mysql80

启动服务

net start mysql80

连接远程数据库

mysql [-h 127.0.0.1] [-P 3306] -u root -p

-h: MySQL服务所在的主机IP
-P: MySQL服务端口号, 默认3306
-u: MySQL数据库用户名
-p: MySQL数据库用户名对应的密码
[]内为可选参数,如果需要连接远程的MySQL,需要加上这两个参数来指定远程主机IP、端口,如果
连接本地的MySQL,则无需指定这两个参数。


连接地数据库

mysql -u root -p

root是用户名。语句末尾不能加分号,否则报错,这是MySQL唯一加分号报错的SQL语句。


查看数据库列表

show databases;

创建数据库

create database 数据库名称;

创建表之前检查是否已存在,如果存在就移除

create database if not extists 数据库名;

删除数据库

drop database 数据库名称;

删除数据库前检查是否存在

drop database if exists 数据库名称;

创建数据时设置编码

create database 数据库名称 character set utf8;

character set可以缩写成charset


修改数据库编码

alter database 数据库名称 character set utf8;

进入或切换数据库

use 数据库名称

使用use 数据库名称进入或切换数据库。
刚连接上MySQL时,没有处于任何一个数据库中,如果要使用某一个数据库,就需要进入到这个数据库中。
use 数据库名这个命令后面的分号可以省略,这是SQL语句中唯一可以省略分号的语句。


显示当前数据库信息

select database();

进入数据库中,可以使用select database();来查看当前处于哪个数据库。长时间操作数据库时,在很多数据库中来回切换后,查看当前的数据库,避免操作错了数据库。


查看当前数据库的所有表

show tables;

创建非约束表

create table 表名称(id INT, name CHAR(20), price INT);

创建一张带有三个字段的表。
id字段的类型为INT
name字段的类型为CHAR(20)
pric字段的类型为INT


创建带约束的表

create table 表名称(id BIGINT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(25) UNIQUE, email VARCHAR(25) NOT NULL, age INT DEFAULT 17);

表的约束
1、非空约束: NOT NULL,不允许某列的内容为空;
2、设置列的默认值: DEFAULT
3、唯一约束: UNIQUE,该表中,该列的内容必须唯一;
4、主键约束: PRIMARY KEY,非空且唯一;
5、主键自增长: AUTO_INCREMENT,从1开始,步长为1
6、外键约束: FOREIGN KEYA表中的外键列。A表中的外键列的值必须参照于B表中的某一列(B表主键)。


创建带注释的表

create table 表名称(id int comment '编号', name varchar(50) comment '姓名', age int comment '年龄', gender varchar(1) comment '性别') comment '用户表';

显示表信息

show create table 表名称;

更直观的显示表信息

desc 表名称;

更直观更详细的显示表信息

 show full columns from 表名称;

增加表字段

alter table 表名称 add color CHAR(20);

增加表字段及注释

alter table 表名称 add nickname varchar(20) comment '昵称';

修改表字段的数据类型

alter table 表名称 modify name VARCHAR(12);

修改表字段的数据类型和字段名称

alter table 表名称 change name pname CHAR(18);

修改表字段的数据类型、字段名称和注释

alter table 表名称 change name pname CHAR(18) comment '姓名';

删除表字段

alter table 表名称 drop 字段名称;

修改表名

alter table 表名称 rename to 新表名称;

修改表的注释信息

alter table 表名称 comment '数据表';

删除表

drop table 表名称;

删除表前做校验

drop table if exists 表名称;

おすすめ

転載: blog.csdn.net/weixin_51157081/article/details/132220738
おすすめ