mysql c 프로그래밍...

peccavi의 이미지

안녕하세요.

c로 mysql 프로그래밍을 하고 있는데요

타입이 blob 인 컬럼에 데이터를 인서트 하려고 합니다.

근데 LOAD_FILE()을 이용한 파일 업로드가 아니라

용량이 큰 변수를 쿼리로 날려서 인서트 하려고 하면..

쿼리가 상당히 길어지잖아요..

예를 들면,

char data[10000] 이라는 변수가 있는데

이 data값을 blob 컬럼에 인서트 하려면

어떻게 해야 되는지요..

그냥 쿼리로

sprintf(query, "insert into member values ('%s')", data);

이렇게 쓰면, 쿼리 자체 길이가 10000이 넘어가는거지요?

그렇게 하면 문제가 생길것 같아서.. 다른 방법을 찾아보고 있는건데..

에구.. 글이.. --;;

blob타입 컬럼에 LOAD_FILE을 이용하지않고 문제없이 대형 데이터를

인서트 하는 방법을 알고 싶습니다.

답변좀 부탁드릴께요.. ㅠㅠ

불량청년의 이미지

MySQL은 데이터 insert시 따로 지원되는 API가 없는 걸로

알고 있습니다. 오라클은 따로 지원하는 것들이 있다는군요.

그냥 님이 생각하신 방법대로 insert 시켜야 될 듯 합니다.

머 10000바이트 정도야 별로 크게 느껴지지는 않네요. ㅡ,.ㅡ;

수고하세요~

H/W가 컴퓨터의 심장이라면 S/W는 컴퓨터의 영혼이다!

peccavi의 이미지

답변 감사합니다.. 그냥 해야겠네요.. ^^

----
jai guru deva om...

choissi의 이미지

blob데이터를 부을 때, 바이너리 데이터인 경우에 그냥 하시면 널스트링을 만나서 제대로 동작하지 않는 경우가 있습니다.

mysql_real_escape_string()

로 인코딩해서 쿼리문을 만들어야 잘 들어갑니다.
(다시 말해 쿼리문으로 만들면 인코딩/디코딩 오버헤드가 추가 됩니다.)

더 자세한 내용은 아래의 링크에 첨부된
pdf 파일에서 "Working with Image Data"
부분을 참조하세요.

http://www.ezdoum.com/stories.php?story=03/04/07/4145170

울랄라~ 호기심 천국~!!
http://www.ezdoum.com

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.