Ruby를 사용하여 localhost에서 MySQL에 값을 삽입하려고합니다. 내가 삽입하고 싶은 값은 트위터 검색 결과입니다. 내 프로그램은 결과를 파일에 성공적으로 쓸 수 있으므로 이제 결과를 MySQL에 삽입하려고합니다. 여기에 내 코드의 일부는 다음과 같습니다Ruby Mysql의 테이블에 값을 삽입하지 못했습니다.
results = @search.perform("yahoo", 100)
client = Mysql2::Client.new(:host => "localhost", :username => "root", :password => "123", :database => "db1")
results.map do |status|
insert = client.query ("INSERT INTO table1 (fromuser, tweet) VALUES (#{status.from_user},#{status.text})")
end
오류는 "당신은 당신의 SQL 구문에 오류가있다; 근처 사용할 수있는 권리 구문에 대한 MySQL 서버 버전에 해당하는 설명서를 확인하십시오"입니다 라인 1에서 "짹 짹짹 (Mysql2 :: 오류)
무엇이 오류의 원인이 무엇입니까?
내가 발견 한 또 다른 문제는 다음과 같은 코드를 사용하여 MySQL에 값을 입력 할 때 다른 오류가 발생한다는 것입니다. "알 수없는 열 'in'필드 목록 '(Mysql :: ServerError :: BadFieldError) "
require 'mysql'
require 'rubygems'
sql = Mysql.real_connect("localhost", "root", "123", "db1")
st1 = "a"
st2 = "b"
user_string = "(#{st1},#{st2})"
query="INSERT INTO table1 (fromuser, tweet) VALUES" + user_string
sql.query(query)
테이블에 "a"와 "b"를 삽입하고 싶습니다. 어떻게 해결할 수 있습니까? 사전에
덕분에,
고맙습니다, tjmw. 정말 감사. 이제 작동합니다. 견적과 탈출이 필요합니다. – user605947
아, 잘 했어. MySQL을 사용하지 않고 이스케이프 할 때 어댑터가 따옴표를 추가한다고 가정했습니다. –