重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在create table后面少了一个空格
站在用户的角度思考问题,与客户深入沟通,找到门头沟网站设计与门头沟网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名注册、网站空间、企业邮箱。业务覆盖门头沟地区。
sql="create table "+ tableName+"(field1 int,field2 int not null)";
应该 是 begin 前的语法有问题
1:v_age bigint(3) 是否 应该 是 v_age bigint
2:begin 前的括号 不 匹配
应该 还有 一个 右括号
因为add_duser2 后面有一个 左括号
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;
MySQL在Windows下都不区分大小写。
比如表名变量是table
String sql="delete from '+table+' where name='123'"
变量a之前的符号是@
shell前面是$
MYSQL不支持直接使用变量做表名
创建存储过程
begin
DECLARE dbName VARCHAR(30);
SET dbName = 'aaa';
SET @STMT :=CONCAT("CREATE TABLE ",dbName," SELECT id from gamedb;");
PREPARE STMT FROM @STMT;
EXECUTE STMT;
END
在select 语句中赋值给用户变量的语法是 @ var_name := value ,这里的var_name 是变量名,value是正检索的值.
1:变量可以用在以后语句中表达式可用的任何地方,例如where字句或者insert 语句中。
例如select @id :=cust_id from customers where cust_id='customer name';
delete from orders where cust_id = @id;
2:变量的另一个用途是保存在一个auto_increment列的表中 插入新的一行后last_insert_id()的结果
select @last_id :=Last_INSERT_ID();
LAST_INSERT_ID()返回新的AUTO_INCREMENT列值,通过将其保存在变量中,你可以在之后的语句中多次引用该值。
即使发起其他的语句创建他们自身的atuo_increment值,从而改变了last_insert_id()返回的值
3:用户变量拥有单一的值,如果使用返回多行的语句来将值赋给一个变量,那么只有最后一行的值被赋给了该变量。
4:要将一个变量显示地设为一个特定值,使用set语句,set语法可以使用:=或者=来进行赋值
5:set也可以用来将一个select的结果赋给一个变量.