您的位置:首页 > 数据库 > MySQL

mysql 语句

2016-12-02 17:32 330 查看
create DATABASE if not exists test_mysql CHARACTER SET utf8;

use test_mysql;

create table if not EXISTS user (
id int(11) not null auto_increment COMMENT '自增ID',
name VARCHAR(100) not null comment 'name',
age int(4) not null DEFAULT 0 comment 'age',
primary key (id, name)
)
auto_increment=1;

desc user;

show create table user;

show table status like 'user';

select * from user;

ALTER table user modify name VARCHAR(100) not null DEFAULT ''
ALTER table user change name new_name VARCHAR(50) not null DEFAULT ''
ALTER table user add (address VARCHAR(50) not null)
alter table user drop address

TRUNCATE table user;

drop procedure if exists p_insmrgnrate_update;
CREATE PROCEDURE `p_insmrgnrate_update`()

BEGIN
DECLARE from_tablename VARCHAR(50) DEFAULT '';
DECLARE to_tablename VARCHAR(50) DEFAULT '';
DECLARE date VARCHAR(20) DEFAULT '';
DECLARE alter_sql VARCHAR(256) DEFAULT '';
set from_tablename = 't_cash_deposit';
set date = DATE_FORMAT(CURDATE(),'%Y_%m_%d');
set to_tablename = concat('t_cash_deposit_', date);
set alter_sql = concat('alter table t_cash_deposit rename ', to_tablename);
SELECT alter_sql;
set @v_sql=alter_sql; -- 注意很重要,将连成成的字符串赋值给一个变量(可以之前没有定义,但要以@开头)
prepare stmt from @v_sql; -- 预处理需要执行的动态SQL,其中stmt是一个变量
EXECUTE stmt; -- 执行SQL语句
deallocate prepare stmt; -- 释放掉预处理段

CREATE TABLE t_cash_deposit (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增列ID' ,
`cffex` decimal(20,4) NOT NULL ,
PRIMARY KEY (`id`)
)
ENGINE=MyISAM

DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci;
end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: