MYSQL의 테이블에 값을 삽입하려고하면 테이블에 고유 한 열이 있으므로 열에 항상 다른 값이 있습니다.MYSQL 중복 행
나는 coloumn에 대한 UNIQUE
퍼팅 시도했지만 작동하지 않았다가, 또한 PRIMARY KEY
로 해당 열을 가하고 시도하고 작동하지 않았다 IGNORE INTO
명령을 삽입 (http://www.tutorialspoint.com/mysql/mysql-handling-duplicates.htm)
내 의도는 독특한 phonenumber
열을 넣어 그래서 모든 이 열의 값은 다릅니다. 새로 삽입 한 값이 고유하지 않으면 오류가 발생하지 않고 건너 뜁니다.
내 코드 테이블을 만들기 :
public function create_member_table($table)
{
$this->sql ="CREATE TABLE IF NOT EXISTS $table (id BIGINT NOT NULL AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
phonenumber VARCHAR(20) NOT NULL,
country VARCHAR(2) NOT NULL,
profession VARCHAR(5000) NOT NULL,
profilepic VARCHAR(5000) NOT NULL,
smskey VARCHAR(100) NOT NULL,
status INT NOT NULL,
reg_date_time DATETIME NOT NULL,
UNIQUE (id,phonenumber))
PARTITION BY HASH(id)
PARTITIONS 1023;";
$this->tb = mysqli_query($this->ret,$this->sql);
if(!$this->tb){
echo "Table not created<br>";
}
else{
echo "Table created<br>";
}
삽입 테이블 :
public function table_member_insert($table,$phonenumber="",$username="",$country="",$profession="",$profilepic="0",$smskey="",$status="") {
$this->sql = "INSERT INTO $table
(username,phonenumber,country,profession,profilepic,smskey,status,reg_date_time)
VALUES
('$username','$phonenumber','$country','$profession','$profilepic','$smskey','$status',now());";
$this->tb = mysqli_query($this->ret,$this->sql);
if(!$this->tb){
echo "values not inserted<br>";
}
else{
echo "values inserted<br>";
} }
질문에 대한 답변이 없습니까? http://stackoverflow.com/questions/1361340/how-to-insert-if-not-exists-in-mysql – mamosek