草庐IT

query_var

全部标签

PHP SQL防止重复用户名: Catching Exception vs Select Query

这个问题在这里已经有了答案:Howtopreventduplicateusernameswhenpeopleregister?(4个答案)关闭去年。为了防止将重复的用户名输入数据库并通知用户,插入时使用异常捕获还是插入前选择查询更标准/更喜欢?异常捕获:如果我尝试插入用户输入并且用户名已经存在,则SQL数据库将抛出一个违反主键约束的异常。如果发生这种情况,我可以捕获它并做任何事情。选择查询:如果它返回与用户名匹配的任何元组,那么我就不会为插入而烦恼。然后我可以显示错误消息。我想在这里使用异常的主要优点是查询和行数更少(速度更快?)。但是,我认为这不是特例,因为重复项可能经常出现。

mysql - 无法创建/写入文件 '/var/lib/mysql/aria_log_control'

出了点问题。我停止了MaridaDB,将/var/lib/mysql移动到另一个地方,然后用软链接(softlink)替换了旧的mysqlcd/var/libln-s/data/mysql.然后我添加了chown-Rmysql:mysqlmysql然后我转到/data并执行相同的操作(注意:此重定位在常规mysql中工作正常)。但是在MariaDB中ERROR]mysqld:Can'tcreate/writetofile'/var/lib/mysql/aria_log_control'(Errcode:13"Permissiondenied")[ERROR]mysqld:Goterro

php - 在带有 mysql 的 php 中,您可以将 $var 替换为 :var?

我在这里搜索了同名主题,但没有找到与我所拥有的内容相关的内容。我按照教程和sql$sql.="WHEREevent_id=:idLIMIT1"我看到作者用了:id。我认为应该是$id。我不知道这个php符号。请有人告诉我,这是怎么回事?谢谢。 最佳答案 这称为参数绑定(bind)。目的是防止SQL注入(inject)。例子:prepare('SELECTname,colour,caloriesFROMfruitWHEREcaloriesbindParam(':calories',$calories,PDO::PARAM_INT);$

php - 从 mysql_query 切换到 PDO 的问题

我正在从传统的mysql_query()参数化查询切换到PDO以利用它的安全优势,我有几个问题。首先,就magic_quotes而言,是否需要做任何事情?这个web应用程序将安装在不同配置的系统上,有些系统(不幸的是)会打开它们,而另一些则会关闭。以前我正在对addslashes()执行整个if语句,当它关闭输入数据时......需要像这样的PDO查询来完成什么:$dbh=newPDO("mysql:host=$db_server;dbname=$db_database",$db_username,$db_password);$sth=$dbh->prepare("SELECT*FRO

php - Mysqli_query() 期望参数 1 为 mysqli,给定为空?令人困惑?

define('DB_HOST','localhost');define('DB_USER','******');define('DB_PASSWORD','************');define('DB_NAME','***********');$dbc=mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);classUser{functioncheckUser($uid,$oauth_provider,$username,$email,$twitter_otoken,$twitter_otoken_secret){$query=

php - 设置@var := SELECT * FROM table_name: is it possible

我正在尝试编写我的MySQL查询,但我坚持这个-我有多个从我的php到SQL数据库的查询:SET@var:=SELECTMAX(first_column)FROMtable;SELECT@var,table.second_columnFROMtable;但它返回SQL错误。当我在phpmyadmin中使用它时,它工作正常。我用谷歌搜索,看到人们只在存储过程中使用“SET@var=MySQLquery”。是否可以按照我想要的方式使用它? 最佳答案 如果您正在运行多个查询(即,您的查询中有一个;),您需要将其作为两个单独的查询运行,或者

PHP: mysql_query 及其连接说明

最近开始学习PHP,发现常用的连接数据库的方式是://createconnectiontodatabase$connection=mysql_connect("localhost","root","password")//Selectdatabase$db_select=mysql_select_db("myDB",$connection);//andfinallythequery..$result=mysql_query("SELECT*FROMtable",$connection);现在我的问题是,为什么我们必须在第三步使用$connection?!因为我们正在使用“myDB”数据

mysql - 错误 1241 (21000) : Operand should contain 1 column(s) when executing query

INSERTINTOPeople(Track_id_Reference)SELECTtrack_idFROMTracksWHEREtrack_titleIN(SELECTtracktitleFROMtop100WHEREartistIN(SELECTp.People_name,t.artistFROMPeopleASpRIGHTJOINtop100AStONp.People_name=t.artistUNIONDISTINCTSELECTp.People_name,t.artistFROMPeopleASpLEFTJOINtop100AStONp.People_name=t.artis

php - laravel 5.1 中的 Eloquent 和 Query Builder 有什么区别?

当我开始从数据库查询数据时,我不知道应该以何种方式使用Eloquent或QueryBuilder。什么是最好的选择?Eloquent比Querybuilder写得少,但我无法控制输入字段,而Querybuilder写得更多,但我可以自己手动输入字段。关于他们,我还需要进一步了解什么? 最佳答案 没有最好的选择。选择完全取决于您的需求。使用Eloquent既有使用ORM的优点,也有缺点。总的来说,Eloquent相对于查询构建器的主要优势是开发速度。这降低了开发成本。主要缺点是ORM往往较慢,并且开发人员对数据库管理的控制较少。对于不

php - 无法获取 mysqli_query

我目前正在使用php和mysql为我的网站开发更新功能图1当我点击编辑按钮时,它会将我重定向到编辑页面以更新用户详细信息。图2它假设在我在pic2中创建的空文本框中显示从pic1中的数据库获取的数据。但是那里弹出错误(如图2所示)。这是我从数据库中获取用户详细信息的代码:谁能帮我解决这个问题?非常感谢。 最佳答案 你还没有定义$id,你已经使用了$test。改变:$catchsql="SELECT*FROMtbluserWHEREuserId='$id'";到$catchsql="SELECT*FROMtbluserWHEREuse