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的结果赋给一个变量.
假如用户输入的姓名和年龄值分别保存在变量name,age中:char sql_insert[200]
sprintf(sql_insert, "INSERT INTO table values('%s','%d')", name, age)
mysql_query(&mysql_conn, sql_insert)
上述语句在执行完sprintf语句后,sql_insert中保存的是INSERT查询语句字符串,sql_insert作为mysql_query()语句的参数即可实现正确的插入。
我理解的您的意思是这样的:提供一个变量$a ----------> read a 将不同的数值赋给变量a----------------->之后进入mysql数据库命令行,能否实现create databases $a
执行方法为:
read a 之后输入值
通过命令
mysql -e "create database $a"则可以将变量插入到数据库中
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)