Velkost poli

C++, C#, Visual Basic, Delphi, Perl a ostatní

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod qwepo753 27. 3. 2011 17:46

Dobry den,
chcel by som jednu radu. Robim export dat do excelu. Pri vacsich poliach mi export pri naplnani padne s hlaskou "Pole je pro přidávaná data příliš malé. Zkuste vložit méně dat.". Exportovane pole ma cez 2000 znakov. Viem ze je to vela, ale zakaznik to tak ziada. Tak by som potreboval radu, ci je to vobec riesitelne a ak ano, ako. Prikladam zjednoduseny zdrojak.
Dakujem

Vytvorenie suboru s hlavickou:
Kód: Vybrat vše
using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.xls;Extended Properties='Excel 8.0'"))
            {
                conn.Open();
                OleDbCommand cmd = new OleDbCommand("CREATE TABLE [Databaza] ([Obsah] string),conn);
                cmd.ExecuteNonQuery();
            }

Naplnenie:
string data= "Presne pred rokom na Veľkonočné sy som bol na Ranej svedkom, ako jeden pilot pri štarte v silnom vetre, keď ho dvihlo,Presm na Veľkonočné sy som bol na Ranej svedkom, ako jeden pilot pri štarte v silnom vetre, keď ho dvihlo,Presne pred rokom na Veľkonočné sviatky som bol na Ranej svedkom, ako jeden pilot pri štarte v silnom vetre, keď ho dvihlo,";
Kód: Vybrat vše
                System.Data.OleDb.OleDbConnection MyConnection;
                System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand();
                string sql = null;
                MyConnection = new System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='test.xls';Extended Properties=Excel 8.0;");
                MyConnection.Open();
                myCommand.Connection = MyConnection;

                sql = "Insert into [Filmy] (Obsah) values('"+data+"')";
                myCommand.CommandText = sql;
                myCommand.ExecuteNonQuery();
                MyConnection.Close();
Naposledy upravil Vebloud dne 28. 3. 2011 15:37, celkově upraveno 1
Důvod: Používejte sakra ten code tag lidi
qwepo753
Trvalý BAN

Odeslat příspěvekod Wikan 27. 3. 2011 18:19

Asi to v tomhle konkrétním případě nepomůže, ale vhodnější je vkládat data do příkazů parametricky:
Kód: Vybrat vše
sql = "Insert into [Filmy] (Obsah) values(?)";
myCommand.CommandText = sql;
myCommand.Parameters.AddWithValue("obsah", data);
Wikan
Moderátor
Uživatelský avatar

Odeslat příspěvekod mracka michal 28. 3. 2011 05:29

(Podla MSDN) Skus:
CREATE TABLE [Databaza] ([Obsah] LongText)
„You don't need a reason to help people.”
~Zidane Tribal, Final Fantasy IX
--
Pouzivam suborovy manazer Nomad.Net.
mracka michal
Junior
Uživatelský avatar

Odeslat příspěvekod qwepo753 28. 3. 2011 13:28

Dakujem vam za rady. Ten LongText pomohol. Uz to funguje.
Na hlavy z zive.cz je vzdy spolah :)
Este rez dik
qwepo753
Trvalý BAN


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků