mysql数据库的PASSWORD函数在数据库的表中设置密码有什么限制?

SELECT ID,Name,PASSWORD(Pass),LoginType,CinemaID,MainAccountType from t_web_account WHERE Pass=PASSWORD( '01996666' ) and Name= 'quanguohengdian' ;同一条sql语句在mysql数据中执行有数据,在java代码中执行无数据。但我在数据库中将密码改为11996666后,java代码执行sql有记录,一切正常,求解!

初步认为PASSWORD函数中密码不能以0开头,很多密码我试了都可以。

1个回答

"初步认为PASSWORD函数中密码不能以0开头 “,我实验了一下,以0开头是可以的,只有是null的时候才返回NULL,别的没有什么限制。
在mysql的控制台输入:? password 就可以看到解释,里面的链接是详细说明。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C++ 调用MySQL 密码函数

各位前辈,我现在想实现这样一个功能:在MySQL数据库的表里存储有加密过的密码,在我的程序里用户输入了密码(明文),我想在程序中调用MySQL的PASSWORD函数对用户输入加密,将形成的密文与数据库存储的值对比,从而判定密码是否正确。这一过程如何实现呢?往前辈们不吝赐教,谢谢啦~

微信小程序访问mysql的云函数

以下为个人看腾讯云大学视频做的,访问不了,请大神帮助,最好连同调用index.js。 // 云函数入口文件 const cloud = require('wx-server-sdk'); const mysql = require('mysql2/promise'); cloud.init() // 云函数入口函数 exports.main = async (event, context) => { const connection = await mysql.createConnection({ host:'cd-cdb-1y88ppya.sql.tencentcdb.com', user:'root', database: 'rkjsjy', password: '123456' }) const [rows, fields] = await connection.execute('select * from a_user') return } 数据库是我在腾讯云买的mysql数据库,在vfp里已经正常链接了 看腾讯云大学视频。

vs2010mfc制作了一个登录窗口,数据库使用的是MySQL,怎样写才能连接到数据库进行登录?

![图片说明](https://img-ask.csdn.net/upload/201509/16/1442392625_930664.jpg) 账号编辑框添加变量为:CEdit m_ID 密码编辑框添加变量为:CEdit m_password 登录按钮下的事件函数,可以连接到mysql的数据库,可以实行插入删除操作。 现在服务器数据库里面有一个名为:DATASOURCE的数据库,里面有一张表为:information,表里面有多个属性,其中ID为int型,Password为varchar。 不知道怎样写才能与数据库中的ID和密码进行匹配。。在网上找了好久都没找到说怎样写的,只找到一个类似的C#程序。。。新手,为了这我都泪目了,到处查都查不到请各位大神指点。。(如果能写出范例是再好不过。。)在这儿先谢谢各位了!

数据库(mysql)的用户表里新创建了一个用户,可是用它登入系统,却说用户名密码错误,报错如下

start 2017-06-15 10:01:34 -253382 [http-apr-8080-exec-6] INFO - cm登录系统密码或用户名错误 2017-06-15 10:01:35 -254698 [http-apr-8080-exec-7] DEBUG - Don't need to create transaction for [com.xhw.service.system.user.impl.UserService.getUserByNameAndPwd]: This method isn't transactional. 2017-06-15 10:01:35 -254699 [http-apr-8080-exec-7] DEBUG - ooo Using Connection [com.alibaba.druid.proxy.jdbc.ConnectionProxyImpl@dc6e69] 2017-06-15 10:01:35 -254699 [http-apr-8080-exec-7] DEBUG - ==> Preparing: select USER_ID, USERNAME, PASSWORD, NAME, RIGHTS, ROLE_ID, LAST_LOGIN, IP, STATUS, BZ, SKIN, EMAIL, NUMBER, PHONE from SYS_USER where 1=1 and USERNAME = ? and PASSWORD=? 2017-06-15 10:01:35 -254699 [http-apr-8080-exec-7] DEBUG - ==> Parameters: cm(String), 6ba424c31220d5df3b83352ba0851ccace7a7be8(String)

Qt使用MySql数据库与多线程

在TcpConThread.h中申明 MySqldb *db; 子线程的一个槽函数 void TcpConThread::on_Ready_Read() { db = new MySqldb; 。。。。 } 为什么使用db能查询到数据但是就是无法对数据库进行任何的修改和插入,插入函数 int MySqldb::insertNewUser(int id, QString password, QString name) { int ret; QSqlQuery query; QString sql = QString("select userID from userinfo"); query.exec(sql); while (query.next()) { if ( query.value(0).toInt() == id ) { ret = 0; //已经存在 } } int flag = 0; QString ip = ""; query.prepare("insert into userinfo (userID, passwd, usernName, flag, IP) values (?,?,?,?,?)"); query.bindValue(0,id); query.bindValue(1,password); query.bindValue(2,name); query.bindValue(3,flag); query.bindValue(4,ip); if(!query.execBatch()) { ret = -1;//插入失败 } else { ret = 1; } return ret; } 打印返回值一直是真,把各个数据打印出来也是对的,但是数据库里面就是找不到这条记录。 求大牛们告知啊,过几天就要毕业答辩了 怎么都调试不出来

用户名密码登录,数据存在数据库中的user表中,为何我的网页只能按其中的一条登录。

问题简单的来说就是他只认其中的某一条数据,其他的都会显示用户名密码错误 ``` protected void Button1_Click(object sender, EventArgs e) { DataSetTableAdapters.UserTableAdapter ada = new DataSetTableAdapters.UserTableAdapter(); DataSet.UserDataTable table1 = new DataSet.UserDataTable(); ada.Fill(table1); //查询表数据 for (int i = 0; i < table1.Rows.Count; i++) { if (TextBox1.Text == table1.Rows[i]["UserID"].ToString() && TextBox2.Text == table1.Rows[i]["passWord"].ToString()) { string a = TextBox1.Text; Server.Transfer("Menu.aspx?name=" + a); //跳转到Menu页面 } else { Label3.Text = "用户名或密码错误!"; Label3.ForeColor = System.Drawing.Color.Red; TextBox1.Text = " "; } } } ``` 这个是登录界面到数据库内寻找用户名密码是否匹配的代码,dataset里有User的表和adapter。 我现在的问题是我即使里面有两条数据,他好像也只能按照一条进行登录。我试验了一下分为三种情况: 1.如果我里面是123,123一条数据,是可以用123,123登陆的。 2.如果我里面是234,234一条数据,是可以用234,234登陆的。 3.但里面如果是123,123;234,234两条数据,我就只能用123,123登录,用234,234登录会显示用户名或密码错误。 我一共搞过3组数据,123,234,abc,发现123>234>abc,也就是如果前面存在的话,后面的就无法登录,但是单独的都可以。而且与存放在数据库的上下顺序无关 错误很诡异..我也是实在没有办法了 ![图片说明](https://img-ask.csdn.net/upload/201904/01/1554111735_459866.png)![图片说明](https://img-ask.csdn.net/upload/201904/01/1554111741_854148.png) 感谢各位!

PHP使用mysql函数后网页一片空白如何解决?

调用PHP连接MySQL数据库,$conn=mysql_connect($host, $user, $password) _ 结果虽然没有报错,但是页面全部空白,什么也不显示,请问这是怎么回事? MySQL和Apache都装了,其他PHP页面也正常,只有含有MySQL数据库操作的 页面全部空白。百度知乎思否都没答案,晕。 非常感谢

数据库中的日期有10位数字

<div class="post-text" itemprop="text"> <p>I am so new in PHP / MySQL.</p> <p>I did this tutorial online:</p> <p>Members Area System in php mysql - members users system area log sign</p> <p><a href="http://www.webestools.com/scripts_tutorials-code-source-14-members-area-system-in-php-mysql-members-users-system-area-log-sign.html" rel="nofollow">http://www.webestools.com/scripts_tutorials-code-source-14-members-area-system-in-php-mysql-members-users-system-area-log-sign.html</a></p> <p>So far everything works fine, except for the date.</p> <p>The date (signup_date column) appear in a strange way inside the data base. How can i fix?</p> <p>id: 1 username: myusername password: helloworld email: myusername avatar: myavatar signup_date: 1411562966</p> <p>Thank you so much for your help</p> <p><strong>This is my mysql table code:</strong></p> <pre><code>CREATE TABLE IF NOT EXISTS `users` ( </code></pre> <p><code>id</code> bigint(20) NOT NULL, <code>username</code> varchar(255) NOT NULL, <code>password</code> varchar(255) NOT NULL, <code>email</code> varchar(255) NOT NULL, <code>avatar</code> text NOT NULL, <code>signup_date</code> timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=MyISAM DEFAULT CHARSET=utf8;</p> <p><strong>This is the sign_up.php page where I guess I must modify the date:</strong></p> <pre><code> &lt;?php include('config.php'); ?&gt; &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt; &lt;link href="&lt;?php echo $design; ?&gt;/style.css" rel="stylesheet" title="Style" /&gt; &lt;title&gt;Sign up&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;div class="header"&gt; &lt;a href="&lt;?php echo $url_home; ?&gt;"&gt;&lt;img src="&lt;?php echo $design; ?&gt;/images/logo.png" alt="Members Area" /&gt;&lt;/a&gt; &lt;/div&gt; &lt;?php //We check if the form has been sent if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['avatar']) and $_POST['username']!='') { //We remove slashes depending on the configuration if(get_magic_quotes_gpc()) { $_POST['username'] = stripslashes($_POST['username']); $_POST['password'] = stripslashes($_POST['password']); $_POST['passverif'] = stripslashes($_POST['passverif']); $_POST['email'] = stripslashes($_POST['email']); $_POST['avatar'] = stripslashes($_POST['avatar']); } //We check if the two passwords are identical if($_POST['password']==$_POST['passverif']) { //We check if the password has 6 or more characters if(strlen($_POST['password'])&gt;=6) { //We check if the email form is valid if(preg_match('#^(([a-z0-9!\#$%&amp;\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&amp;\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email'])) { //We protect the variables $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); $email = mysql_real_escape_string($_POST['email']); $avatar = mysql_real_escape_string($_POST['avatar']); //We check if there is no other user using the same username $dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"')); if($dn==0) { //We count the number of users to give an ID to this one $dn2 = mysql_num_rows(mysql_query('select id from users')); $id = $dn2+1; //We save the informations to the databse if(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$avatar.'", "'.time().'")')) { //We dont display the form $form = false; ?&gt; &lt;div class="message"&gt;You have successfuly been signed up. You can log in.&lt;br /&gt; &lt;a href="connexion.php"&gt;Log in&lt;/a&gt;&lt;/div&gt; &lt;?php } else { //Otherwise, we say that an error occured $form = true; $message = 'An error occurred while signing up.'; } } else { //Otherwise, we say the username is not available $form = true; $message = 'The username you want to use is not available, please choose another one.'; } } else { //Otherwise, we say the email is not valid $form = true; $message = 'The email you entered is not valid.'; } } else { //Otherwise, we say the password is too short $form = true; $message = 'Your password must contain at least 6 characters.'; } } else { //Otherwise, we say the passwords are not identical $form = true; $message = 'The passwords you entered are not identical.'; } } else { $form = true; } if($form) { //We display a message if necessary if(isset($message)) { echo '&lt;div class="message"&gt;'.$message.'&lt;/div&gt;'; } //We display the form ?&gt; &lt;div class="content"&gt; &lt;form action="sign_up.php" method="post"&gt; Please fill the following form to sign up:&lt;br /&gt; &lt;div class="center"&gt; &lt;label for="username"&gt;Username&lt;/label&gt;&lt;input type="text" name="username" value="&lt;?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?&gt;" /&gt;&lt;br /&gt; &lt;label for="password"&gt;Password&lt;span class="small"&gt;(6 characters min.)&lt;/span&gt;&lt;/label&gt;&lt;input type="password" name="password" /&gt;&lt;br /&gt; &lt;label for="passverif"&gt;Password&lt;span class="small"&gt;(verification)&lt;/span&gt;&lt;/label&gt;&lt;input type="password" name="passverif" /&gt;&lt;br /&gt; &lt;label for="email"&gt;Email&lt;/label&gt;&lt;input type="text" name="email" value="&lt;?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?&gt;" /&gt;&lt;br /&gt; &lt;label for="avatar"&gt;Avatar&lt;span class="small"&gt;(optional)&lt;/span&gt;&lt;/label&gt;&lt;input type="text" name="avatar" value="&lt;?php if(isset($_POST['avatar'])){echo htmlentities($_POST['avatar'], ENT_QUOTES, 'UTF-8');} ?&gt;" /&gt;&lt;br /&gt; &lt;input type="submit" value="Sign up" /&gt; &lt;/div&gt; &lt;/form&gt; &lt;/div&gt; &lt;?php } ?&gt; &lt;div class="foot"&gt;&lt;a href="&lt;?php echo $url_home; ?&gt;"&gt;Go Home&lt;/a&gt; - &lt;a href="http://www.webestools.com/"&gt;Webestools&lt;/a&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt; </code></pre> </div>

pdo函数无法连接数据库

这是我的测试代码部分,把pdo连接的语句 写成函数后就连接不了数据库了。 <?php header('content-type:text/html;charset=utf8'); //链接数据库 //1.非函数,成功连接 try{ $dsn='mysql:host=localhost;dbname=cyotel'; $username='root'; $password='root'; $pdo=new PDO($dsn,$username,$password); //打印连接结果 }catch(PDOException $e){ echo $e->getMessage(); } var_dump($pdo); //2.函数,连接失败 function connect(){ try{ $dsn='mysql:host=localhost;dbname=cyotel'; $username='root'; $password='root'; $pdo2=new PDO($dsn,$username,$password); //打印连接结果 }catch(PDOException $e){ echo $e->getMessage(); } } connect(); var_dump($pdo2); ?> 浏览器中的测试打印结果 ![图片说明](https://img-ask.csdn.net/upload/201608/23/1471916433_993754.png) php新手,还不太会面向对象~目前只懂点面向过程,跪求大神解答~

在调用函数之后,无法使用php函数使用php读取插入mysql数据库中的行

<div class="post-text" itemprop="text"> <p>called a function like :-</p> <pre><code>$setmessage = setlatestmessage($sessionid, $sendersuserid, $message1); </code></pre> <p>the function is in file functions.php, which i had included in this file The function is :-</p> <pre><code>function setlatestmessage($sessionid, $userid, $message, $status = 0) { $dbc = mysqli_connect(hostname, username, password, database) or die("Error connecting database"); // there was no row, so just add a row $query2 = "insert into table(session_id, user_id, message, status) values ( $sessionid, $userid, '$message', $status)"; mysqli_query($dbc, $query2); // if a row was affected, close connection and send true if (mysqli_affected_rows($dbc) == 1) { mysqli_close($dbc); return TRUE; } mysqli_close($dbc); return FALSE; } </code></pre> <p>now, just after i had called this function, the script goes like</p> <pre><code>if (!$setmessage) { echo '&lt;status&gt;0&lt;/status&gt;'; } else { // fetch id of the row just inserted $query2 = "select id from game_messages where session_id = $sessionid and message = '$message1' and user_id = $sendersuserid order by datetime desc limit 1"; $result2 = mysqli_query($dbc, $query2); if (mysqli_num_rows($result2) == 0) { // if no row was returned // case never should happen echo '&lt;status&gt;10&lt;/status&gt;'; } else{echo'done';} </code></pre> <p>The output i get is 10.</p> <p>However, if i just place a sleep(50) under the function call, or i just code what the function is doing, instead of the function call, i get correct output. Cant figure out why this is happening.</p> </div>

MySQL5.7中authentication_string字段的编码方式

MySQL5.7中的authentication_string字段替换了5.6版本以前的user权限表中Password字段,我想请问一下,这个字段的编码方式是什么?我设置的密码是“12345678”,,如何编码会出现如图所示的序列,附上图:![图片说明](https://img-ask.csdn.net/upload/201601/30/1454149408_757660.png)

php mysql_connect不能用

``` error_reporting(E_ALL); echo 'hello'; $con = mysql_connect("127.0.0.1","root","password"); echo 'hello'; if($con){ echo '连接mysql数据库成功.<br>'; }else{ die('连接mysql数据库失败:' . mysql_error()); } mysql_close($con); echo '关闭mysql数据库连接.'; ``` 输出hello 如果换成就正常mysqli_connect() ![图片说明](https://img-ask.csdn.net/upload/201702/05/1486264548_538064.jpg)

用户名必须存在于数据库中以创建登录

<div class="post-text" itemprop="text"> <p>I created this login page with the help of Dreamweaver, and want to make it so the username field must match a username in the SQL database in order to create password. I am not very familiar with this and am unsure on what I need to do to require an existing username and then add a password to that username row in the database. </p> <p>Here is the php code created by Dreamweaver: The connection to the database already exists, so I know that it is not present in the below code. This works just fine as a normal registration page, but I don't want just anybody being able to register.</p> <pre><code>&lt;?php if (!function_exists("GetSQLValueString")) { function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") { if (PHP_VERSION &lt; 6) { $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; } $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? doubleval($theValue) : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue; } } // *** Redirect if username exists $MM_flag="MM_insert"; if (isset($_POST[$MM_flag])) { $MM_dupKeyRedirect="userexists.php"; $loginUsername = $_POST['username']; $LoginRS__query = sprintf("SELECT username FROM users WHERE username=%s", GetSQLValueString($loginUsername, "text")); mysql_select_db($database_User_Information, $User_Information); $LoginRS=mysql_query($LoginRS__query, $User_Information) or die(mysql_error()); $loginFoundUser = mysql_num_rows($LoginRS); //if there is a row in the database, the username was found - can not add the requested username if($loginFoundUser){ $MM_qsChar = "?"; //append the username to the redirect page if (substr_count($MM_dupKeyRedirect,"?") &gt;=1) $MM_qsChar = "&amp;"; $MM_dupKeyRedirect = $MM_dupKeyRedirect . $MM_qsChar ."requsername=".$loginUsername; header ("Location: $MM_dupKeyRedirect"); exit; } } $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_insert"])) &amp;&amp; ($_POST["MM_insert"] == "register")) { $insertSQL = sprintf("INSERT INTO users (username, password) VALUES (%s, %s)", GetSQLValueString($_POST['username'], "text"), GetSQLValueString($_POST['password1'], "text")); mysql_select_db($database_User_Information, $User_Information); $Result1 = mysql_query($insertSQL, $User_Information) or die(mysql_error()); $insertGoTo = "login.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&amp;" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); } mysql_select_db($database_User_Information, $User_Information); $query_User_Request = "SELECT * FROM users"; $User_Request = mysql_query($query_User_Request, $User_Information) or die(mysql_error()); $row_User_Request = mysql_fetch_assoc($User_Request); $totalRows_User_Request = mysql_num_rows($User_Request); ?&gt; </code></pre> </div>

输入类型日期,用于设置从数据库中获取的日期

<div class="post-text" itemprop="text"> <p>I have database <strong>user</strong> consist of attribute like <strong>name,password,dob and etc.</strong> datatype is used to store date is <strong>date</strong>.while updating, I used to fetch like below</p> <pre><code>$query="select * from user where email='$user'"; $res=mysqli_query($conn,$query); $fet=mysqli_fetch_array($res); &lt;input type="date" id="dob" name="dob" value="&lt;?php if($fet['dob']==00-00-0000){ }else{ echo date($fet['dob']);} ?&gt;"&gt; </code></pre> <p>I want date which is to fetch from database to this above input type date.</p> </div>

如何检查用户名是否已被使用,如果没有,请将所选用户名输入MySQL数据库?

<div class="post-text" itemprop="text"> <p>I am making a registration system, and I wanted to check wether or not a Username chosen by the user has already been used and if it hasn't already been used, enter the chosen username into the DB?.</p> <p>below is my query as it is so far, but I keep getting syntax errors. For the record: I am going to use BindParam() to bind the PHP input of the user into the query :) </p> <p>I also have another column called "ID-number", which is a primary key.</p> <p>Any help on how to do this is welcome!</p> <p>Greets, </p> <p>Romulus</p> <hr> <pre><code>SELECT CASE WHEN `Username` != `Username` THEN INSERT INTO 'T_Users' `Username`, `Password`, `Email` VALUES ':username', ':password', ':email' END FROM `T_Users` </code></pre> </div>

scrapy存到mysql查询无数据

## 1. 问题描述 尝试使用scrapy框架爬取网站,将爬取的数据存储到mysql数据库,执行完毕之后没有报错,但是我查询数据时,显示没有数据 (代码框架参考使用该博主代码尝试运行: https://www.cnblogs.com/fromlantianwei/p/10607956.html) ## 2. 部分截图 1. scrapy项目: ![图片说明](https://img-ask.csdn.net/upload/202003/04/1583310103_446281.png) 数据库创建: ![图片说明](https://img-ask.csdn.net/upload/202003/04/1583310345_774265.png) ##3. 相关代码 scrapy框架代码: (1)tencent爬虫文件 ``` # -*- coding: utf-8 -*- import scrapy from urllib import parse import re from copy import deepcopy from ScrapyPro3.items import ScrapyPro3Item class tencentSpider(scrapy.Spider): name = 'tencent' allowed_domains = [] start_urls = [ 'http://tieba.baidu.com/mo/q----,sz@320_240-1-3---2/m?kw=%E6%A1%82%E6%9E%97%E7%94%B5%E5%AD%90%E7%A7%91%E6%8A%80%E5%A4%A7%E5%AD%A6%E5%8C%97%E6%B5%B7%E6%A0%A1%E5%8C%BA&pn=26140', ] def parse(self, response): # 总页面 item = ScrapyPro3Item() all_elements = response.xpath(".//div[@class='i']") # print(all_elements) for all_element in all_elements: content = all_element.xpath("./a/text()").extract_first() content = "".join(content.split()) change = re.compile(r'[\d]+.') content = change.sub('', content) item['comment'] = content person = all_element.xpath("./p/text()").extract_first() person = "".join(person.split()) # 去掉点赞数 评论数 change2 = re.compile(r'点[\d]+回[\d]+') person = change2.sub('', person) # 选择日期 change3 = re.compile(r'[\d]?[\d]?-[\d][\d](?=)') date = change3.findall(person) # 如果为今天则选择时间 change4 = re.compile(r'[\d]?[\d]?:[\d][\d](?=)') time = change4.findall(person) person = change3.sub('', person) person = change4.sub('', person) if time == []: item['time'] = date else: item['time'] = time item['name'] = person # 增加密码 活跃 item['is_active'] = '1' item['password'] = '123456' print(item) yield item # 下一页 """next_url = 'http://tieba.baidu.com/mo/q----,sz@320_240-1-3---2/' + parse.unquote( response.xpath(".//div[@class='bc p']/a/@href").extract_first()) print(next_url) yield scrapy.Request( next_url, callback=self.parse, )""" ``` (2)item文件 ``` # -*- coding: utf-8 -*- # Define here the models for your scraped items # # See documentation in: # https://doc.scrapy.org/en/latest/topics/items.html import scrapy class ScrapyPro3Item(scrapy.Item): # define the fields for your item here like: # name = scrapy.Field() comment = scrapy.Field() time = scrapy.Field() name = scrapy.Field() password = scrapy.Field() is_active = scrapy.Field() ``` (3)pipelines文件 # -*- coding: utf-8 -*- # Define your item pipelines here # # Don't forget to add your pipeline to the ITEM_PIPELINES setting # See: https://docs.scrapy.org/en/latest/topics/item-pipeline.html """class Scrapypro3Pipeline(object): def process_item(self, item, spider): return item""" import pymysql from twisted.enterprise import adbapi class Scrapypro3Pipeline(object): def __init__(self, dbpool): self.dbpool = dbpool @classmethod def from_settings(cls, settings): # 函数名固定,会被scrapy调用,直接可用settings的值 """ 数据库建立连接 :param settings: 配置参数 :return: 实例化参数 """ adbparams = dict( host='localhost', db='mu_ke', user='root', password='root', cursorclass=pymysql.cursors.DictCursor # 指定cursor类型 ) # 连接数据池ConnectionPool,使用pymysql或者Mysqldb连接 dbpool = adbapi.ConnectionPool('pymysql', **adbparams) # 返回实例化参数 return cls(dbpool) def process_item(self, item, spider): """ 使用twisted将MySQL插入变成异步执行。通过连接池执行具体的sql操作,返回一个对象 """ query = self.dbpool.runInteraction(self.do_insert, item) # 指定操作方法和操作数据 # 添加异常处理 query.addCallback(self.handle_error) # 处理异常 def do_insert(self, cursor, item): # 对数据库进行插入操作,并不需要commit,twisted会自动commit insert_sql = """ insert into login_person(name,password,is_active,comment,time) VALUES(%s,%s,%s,%s,%s) """ cursor.execute(insert_sql, (item['name'], item['password'], item['is_active'], item['comment'], item['time'])) def handle_error(self, failure): if failure: # 打印错误信息 print(failure)``` ``` (4) settings文件 ``` # -*- coding: utf-8 -*- # Scrapy settings for ScrapyPro3 project # # For simplicity, this file contains only settings considered important or # commonly used. You can find more settings consulting the documentation: # # https://doc.scrapy.org/en/latest/topics/settings.html # https://doc.scrapy.org/en/latest/topics/downloader-middleware.html # https://doc.scrapy.org/en/latest/topics/spider-middleware.html BOT_NAME = 'ScrapyPro3' SPIDER_MODULES = ['ScrapyPro3.spiders'] NEWSPIDER_MODULE = 'ScrapyPro3.spiders' # Crawl responsibly by identifying yourself (and your website) on the user-agent USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36' MYSQL_HOST = 'localhost' MYSQL_DBNAME = 'mu_ke' MYSQL_USER = 'root' MYSQL_PASSWD = 'root' # Obey robots.txt rules ROBOTSTXT_OBEY = False # Configure maximum concurrent requests performed by Scrapy (default: 16) #CONCURRENT_REQUESTS = 32 # Configure a delay for requests for the same website (default: 0) # See https://doc.scrapy.org/en/latest/topics/settings.html#download-delay # See also autothrottle settings and docs #DOWNLOAD_DELAY = 3 # The download delay setting will honor only one of: #CONCURRENT_REQUESTS_PER_DOMAIN = 16 #CONCURRENT_REQUESTS_PER_IP = 16 # Disable cookies (enabled by default) #COOKIES_ENABLED = False # Disable Telnet Console (enabled by default) #TELNETCONSOLE_ENABLED = False # Override the default request headers: #DEFAULT_REQUEST_HEADERS = { # 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', # 'Accept-Language': 'en', #} # Enable or disable spider middlewares # See https://doc.scrapy.org/en/latest/topics/spider-middleware.html #SPIDER_MIDDLEWARES = { # 'ScrapyPro3.middlewares.ScrapyPro3SpiderMiddleware': 543, #} # Enable or disable downloader middlewares # See https://doc.scrapy.org/en/latest/topics/downloader-middleware.html #DOWNLOADER_MIDDLEWARES = { # 'ScrapyPro3.middlewares.ScrapyPro3DownloaderMiddleware': 543, #} # Enable or disable extensions # See https://doc.scrapy.org/en/latest/topics/extensions.html #EXTENSIONS = { # 'scrapy.extensions.telnet.TelnetConsole': None, #} # Configure item pipelines # See https://doc.scrapy.org/en/latest/topics/item-pipeline.html ITEM_PIPELINES = { 'ScrapyPro3.pipelines.Scrapypro3Pipeline':200, } # Enable and configure the AutoThrottle extension (disabled by default) # See https://doc.scrapy.org/en/latest/topics/autothrottle.html #AUTOTHROTTLE_ENABLED = True # The initial download delay #AUTOTHROTTLE_START_DELAY = 5 # The maximum download delay to be set in case of high latencies #AUTOTHROTTLE_MAX_DELAY = 60 # The average number of requests Scrapy should be sending in parallel to # each remote server #AUTOTHROTTLE_TARGET_CONCURRENCY = 1.0 # Enable showing throttling stats for every response received: #AUTOTHROTTLE_DEBUG = False # Enable and configure HTTP caching (disabled by default) # See https://doc.scrapy.org/en/latest/topics/downloader-middleware.html#httpcache-middleware-settings #HTTPCACHE_ENABLED = True #HTTPCACHE_EXPIRATION_SECS = 0 #HTTPCACHE_DIR = 'httpcache' #HTTPCACHE_IGNORE_HTTP_CODES = [] #HTTPCACHE_STORAGE = 'scrapy.extensions.httpcache.FilesystemCacheStorage' ``` (5)start文件——执行爬虫文件 ``` from scrapy import cmdline cmdline.execute(["scrapy","crawl","tencent"]) ``` 数据库创建代码: ``` create database mu_ke; CREATE TABLE `login_person` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(100) DEFAULT NULL, `passsword` varchar(100) DEFAULT NULL, `is_active` varchar(100) DEFAULT NULL, `comment` varchar(100) DEFAULT NULL, `time` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=1181 DEFAULT CHARSET=utf8; select count(name) from login_person;#查询结果条数为0 ``` # 运行完代码后查询数据,显示条数为0,这里面有什么问题吗? (1) 执行过程正常 (2)运行 pycharm2019.3 python3.8 mysql8.0(workbench8.0) (3) 数据连接没有

在类中创建数据库表作为函数

<div class="post-text" itemprop="text"> <p>I am trying to do the trick of shortening my code not only for readability but also for the customisation of the project I am working on.</p> <p>I have created a class which connects to the DataBase but am struggling with a function to use that will create a table with columns.</p> <p>The class looks like this so far:</p> <pre><code>class DataBase { private $link; private $host, $username, $password, $database; public function __construct($host, $username, $password, $database){ $this-&gt;host = $host; $this-&gt;username = $username; $this-&gt;password = $password; $this-&gt;database = $database; $this-&gt;link = mysql_connect($this-&gt;host, $this-&gt;username, $this-&gt;password) OR die("There was a problem connecting to the database."); mysql_select_db($this-&gt;database, $this-&gt;link) OR die("There was a problem selecting the database."); return true; } public function query($query) { $result = mysql_query($query); if (!$result) die('Invalid query: ' . mysql_error()); return $result; } public function __destruct() { mysql_close($this-&gt;link) OR die("There was a problem disconnecting from the database."); } } </code></pre> <p>As you can see the method of query has already been added. An example of how its run is:</p> <pre><code>$db = new DataBase('localhost',$user,$pass,$name); $db-&gt;query('SELECT * FROM table WHERE id="0"'); </code></pre> <p>Could anyone possible sent me some code to add the function to add the Inserting table? I have tried this:</p> <pre><code>public function create_table($t_data) { $result = $t_data; if (!$result) die('Invalid query: ' . mysql_error()); return $result; } </code></pre> <p>Usage:</p> <pre><code>$t_data = 'CREATE TABLE log_users( uid VARCHAR(1024) NOT NULL, username VARCHAR(33) NOT NULL, password VARCHAR(18) NOT NULL, admin VARCHAR(1) DEFAULT 0, key VARCHAR(18) NOT NULL, constant VARCHAR(1) DEFAULT 0)'; $db-&gt;create_table($t_data); </code></pre> </div>

vs2017 c#窗口应用程序 连接mysql ,登陆查询

登陆页面输入username和password,后台获取string uname=username.text string pwd=password.text。根据网上找的mysql连接代码进行连接。根据数据库查询的结果,设置DialogResult的值,判断是继续登陆,还是跳转到主界面。测试发现不管输入什么 总是停留在登陆界面。

Python 使用多线程写入数据库,报错

#问题描述,定义了一个函数,用于数据库写入表,直接使用函数是可以运行,但我创建了一个 多线程,在多线程里面使用运行函数,然后后错 import mysql.connector from mysql.connector import errorcode import threading,time #数据库连接参数 def sqlconn(): dbconfig={'user': 'qrcodeadmin','password': 'careyes!@#','host': '119.23.8.62','port':3308,'database': 'qrcodes','raise_on_warnings': True} try: cnx = mysql.connector.connect(**dbconfig) print('数据库连接成功') except mysql.connector.Error as err: if err.errno == errorcode.ER_ACCESS_DENIED_ERROR: print("Something is wrong with your user name or password") elif err.errno == errorcode.ER_BAD_DB_ERROR: print("Database does not exist") else: print(err.encode) return cnx def handle(): while(True): global UID,ID for i in range(50): print(i) sqlinsert="INSERT INTO qrcode (URL,QrID) VALUES (%s,%s)",(UID,ID) cur.execute(sqlinsert[0],sqlinsert[1]) cur.execute(sqlinsert[0],sqlinsert[1]) dbcon.commit() if __name__=='__main__': global cur dbcon=sqlconn() cur=dbcon.cursor() UID=' MjAxNzEwMTExMjQyNDQ' ID='201710111242420111' #直接使用handle可以运行 handle() #------------- sql_thread=threading.Thread(target=handle) #如果使用线程就会报错 sql_thread.start() dbcon.close() print(dbcon) #报错内容 Exception in thread Thread-1: Traceback (most recent call last): File "C:\Python\lib\site-packages\mysql\connector\connection.py", line 280, in _send_cmd self._socket.send( AttributeError: 'NoneType' object has no attribute 'send' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "C:\Python\lib\threading.py", line 914, in _bootstrap_inner self.run() File "C:\Python\lib\threading.py", line 862, in run self._target(*self._args, **self._kwargs) File "sqltestV0.2_Thread.py", line 34, in handle cur.execute(sqlinsert[0],sqlinsert[1]) File "C:\Python\lib\site-packages\mysql\connector\cursor.py", line 561, in exe cute self._handle_result(self._connection.cmd_query(stmt)) File "C:\Python\lib\site-packages\mysql\connector\connection.py", line 514, in cmd_query result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query)) File "C:\Python\lib\site-packages\mysql\connector\connection.py", line 284, in _send_cmd raise errors.OperationalError("MySQL Connection not available.") mysql.connector.errors.OperationalError: MySQL Connection not available.

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

Intellij IDEA 实用插件安利

1. 前言从2020 年 JVM 生态报告解读 可以看出Intellij IDEA 目前已经稳坐 Java IDE 头把交椅。而且统计得出付费用户已经超过了八成(国外统计)。IDEA 的...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

总结了 150 余个神奇网站,你不来瞅瞅吗?

原博客再更新,可能就没了,之后将持续更新本篇博客。

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

魂迁光刻,梦绕芯片,中芯国际终获ASML大型光刻机

据羊城晚报报道,近日中芯国际从荷兰进口的一台大型光刻机,顺利通过深圳出口加工区场站两道闸口进入厂区,中芯国际发表公告称该光刻机并非此前盛传的EUV光刻机,主要用于企业复工复产后的生产线扩容。 我们知道EUV主要用于7nm及以下制程的芯片制造,光刻机作为集成电路制造中最关键的设备,对芯片制作工艺有着决定性的影响,被誉为“超精密制造技术皇冠上的明珠”,根据之前中芯国际的公报,目...

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

2020阿里全球数学大赛:3万名高手、4道题、2天2夜未交卷

阿里巴巴全球数学竞赛( Alibaba Global Mathematics Competition)由马云发起,由中国科学技术协会、阿里巴巴基金会、阿里巴巴达摩院共同举办。大赛不设报名门槛,全世界爱好数学的人都可参与,不论是否出身数学专业、是否投身数学研究。 2020年阿里巴巴达摩院邀请北京大学、剑桥大学、浙江大学等高校的顶尖数学教师组建了出题组。中科院院士、美国艺术与科学院院士、北京国际数学...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

Python爬虫,高清美图我全都要(彼岸桌面壁纸)

爬取彼岸桌面网站较为简单,用到了requests、lxml、Beautiful Soup4

差点跪了...

最近微信又搞出了一个大利器,甚至都上了热搜,当然消息最敏捷的自媒体人,纷纷都开通了自己的视频号。01 视频号是什么呢?视频号是微信体系内的短视频,它不同...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

Vue回炉重造之router路由(更新中)

你好,我是Vam的金豆之路,可以叫我豆哥。2019年年度博客之星、技术领域博客专家。主要领域:前端开发。我的微信是 maomin9761,有什么疑问可以加我哦,自己创建了一个微信技术交流群,可以加我邀请你一起交流学习。最后自己也创建了一个微信公众号,里面的文章是我自己精挑细选的文章,主要介绍各种IT新技术。欢迎关注哦,微信搜索:臻美IT,等你来。 欢迎阅读本博文,本博文主要讲述【】,文字通...

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

Java岗开发3年,公司临时抽查算法,离职后这几题我记一辈子

前几天我们公司做了一件蠢事,非常非常愚蠢的事情。我原以为从学校出来之后,除了找工作有测试外,不会有任何与考试有关的事儿。 但是,天有不测风云,公司技术总监、人事总监两位大佬突然降临到我们事业线,叫上我老大,给我们组织了一场别开生面的“考试”。 那是一个风和日丽的下午,我翘着二郎腿,左手端着一杯卡布奇诺,右手抓着我的罗技鼠标,滚动着轮轴,穿梭在头条热点之间。 “淡黄的长裙~蓬松的头发...

大胆预测下未来5年的Web开发

在2019年的ReactiveConf 上,《Elm in Action》的作者Richard Feldman对未来5年Web开发的发展做了预测,很有意思,分享给大家。如果你有机会从头...

立即提问
相关内容推荐