Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 5.04.2006 Ostrzeżenie: (0%)
|
Witam,
Mam problem z zapisywaniem w bazie danych w polu MEMO ciągu sformatowanego (Rich Text Format): struktura tabeli np: CREATE TABLE `market_asort` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `opis` text default NULL, PRIMARY KEY (`id`) ) Gdy próbuję zapisać w polu OPIS ciąg RTF, pokazuje mi błąd tego typu: Column count doesn't match value count at row 1. Czy ktoś może mi pomóc w tym zagadnieniu ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 5.04.2006 Ostrzeżenie: (0%)
|
DELPHI 2005.
Oczywiście korzystam z komponentu, ale zapytanie SQL tworzę ręcznie podstawiając dane ze zmiennych i wywołuję procedurę komponentu .ExecSQL('zapytanie'); Zasada jest taka. Wszystkie dane zapamiętuje w tabeli PARADOX. Potem łącze się z bazą danych MySQL i przenoszę te dane z tabeli PARADOX'a do MySQL'a. kod zapytania SQL: sSQL:= 'INSERT INTO market_asort '+ '(domena,kat,nazwa,miara,wymiar1t,wymiar1,wymiar2t,wymiar2,waga,cena,vat,prod uc,gwar,gwar_id,stan,dostep,opis,cenawww,org_id)'+ 'VALUES ('+IntToStr(Serwer.Domena)+','+ IntToStr(sprKat.Fields[0].AsInteger)+','+ ''''+to_ISO1( tTabela.FieldByName('nazwa').AsString )+''', '+ ''''+to_ISO1( tTabela.FieldByName('miara').AsString )+''','+ ''''+to_ISO1( tTabela.FieldByName('wymiar1').AsString )+''','+ ''''+to_ISO1( tTabela.FieldByName('wymiar1t').AsString )+''','+ ''''+to_ISO1( tTabela.FieldByName('wymiar2').AsString )+''','+ ''''+to_ISO1( tTabela.FieldByName('wymiar2t').AsString )+''','+ ''''+to_ISO1( tTabela.FieldByName('waga').AsString )+''','+ CurrToStr(tTabela.FieldByName('cena').AsCurrency)+','+ IntToStr(sprVat.Fields[0].AsInteger)+','+ IntToStr(sprProduc.Fields[0].AsInteger)+','+ IntToStr(tTabela.FieldByName('gwar').AsInteger)+','+ IntToStr(sprGwar.Fields[0].AsInteger)+','+ IntToStr(tTabela.FieldByName('stan').AsInteger)+','+ IntToStr(tTabela.FieldByName('dostep').AsInteger)+','+ sOpis+ IntToStr(tTabela.FieldByName('CenaWWW').AsInteger)+','+ IntToStr(tTabela.FieldByName('id').AsInteger)+');'; try msUpdateAsort.ExecSQL(sSQL); tTabela.Edit; tTabela.FieldByName('upd').AsBoolean:= False; tTabela.Post; except ShowMessage('Niestety nie udało się dopisać !'); tTabela.Next; end; Krew mnie zalewa, bo 4 pierwsze rekordy ładnie przepisał, a przy kolejnych wyskakuje błąd. Jeśli wyłączyłem w kodzie, żeby w pole MySQL podstawiał ciąg pusty to taki rekord zostaje zapamiętany, a w przeciwnym przypadku wyskakuje błąd: [1136] #21S01 Column count doesn't match value count at row 1: Client: 4.1.10 Server: 4.1.11-Debian_4.3tld-log |
|
|
|
AutorNET Zapamiętać RTF w bazie MySQL 5.04.2006, 11:07:48
nospor pokaz jak to wkladasz. zapewne zapomniales o jakim... 5.04.2006, 11:11:14
AutorNET Dokładnie to realizuje mi to program napisany w De... 5.04.2006, 11:51:28
elessar To zalezy jak w tym delphi zapisujesz (recznie two... 5.04.2006, 11:55:11
elessar No to tak jak juz mowilem musisz miec apostrof w A... 5.04.2006, 12:25:29
AutorNET To, co przedstawiłem, to kolejna próba uzyskania d... 5.04.2006, 14:12:59 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 07:38 |