Pergunta : Que é a melhor maneira de importar dados prima no sql, e se certifica que tipos de campo está ajustado??

Eu tenho um spreadsheet de meu escritório da finança que tem datas nele entre outros campos. Bonito muito é apenas uma lista de nomes & quando pagaram uma conta. Eu converti o campo da data a um compatível para perguntar em sql (2010-01-01) primo dentro. Quando eu importo os dados no SQL, converte o número a varchar e os bornes 40269 (ou 40127… dependendo da data) no lugar do date.

If eu mudo o campo a um campo da data, suprime dos dados nele é o ZERO do lugar & dos lugares onde a data estava uma vez. Eu preciso-o de ser um campo da data & eu preciso de importar dados. Eu tenho uns milhares de registros a conservar no DB. o

I am using o phpMyAdmin & o sql, e o DB são manipulados através do PHP.

Thanks adiantado.
class= do

Resposta : Que é a melhor maneira de importar dados prima no sql, e se certifica que tipos de campo está ajustado??

Isto parece trabalhar.  Substituir suas próprias credenciais da base de dados e você deve poder instalá-lo e funcioná-lo.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
" . PHP_EOL;

// DEMONSTRATE HOW TO LOAD A CSV FILE INTO A DATA BASE
$csv = 'RAY_imaginx_data.csv';

// SAMPLE DATA LOOKS LIKE THIS 
// NOTE TRAILING COMMA - PROBABLY AN ERROR - ARTIFACT OF SAVING FROM MICROSOFT EXCEL
// NOTE THE DATE FORMAT - VALID IN PHP, BUT NOT VALID IN MySQL
// 1...5...10...15...20...25...30...35...40...45...
// Vera,Aguirro,,Criselda,regular,1/1/2010,



// CONNECTION AND SELECTION VARIABLES FOR THE DATABASE
$db_host = "localhost"; // PROBABLY THIS IS OK
$db_name = "??";        // GET THESE FROM YOUR HOSTING COMPANY
$db_user = "??";
$db_word = "??";

// OPEN A CONNECTION TO THE DATA BASE SERVER
// MAN PAGE: http://us2.php.net/manual/en/function.mysql-connect.php
if (!$db_connection = mysql_connect("$db_host", "$db_user", "$db_word"))
{
    $errmsg = mysql_errno() . ' ' . mysql_error();
    echo "
NO DB CONNECTION: "; echo "
$errmsg
"; } // SELECT THE MYSQL DATA BASE // MAN PAGE: http://us2.php.net/manual/en/function.mysql-select-db.php if (!$db_sel = mysql_select_db($db_name, $db_connection)) { $errmsg = mysql_errno() . ' ' . mysql_error(); echo "
NO DB SELECTION: "; echo "
$errmsg
"; die('NO DATA BASE'); } // IF WE GOT THIS FAR WE CAN DO QUERIES // CREATING THE TABLE $sql = "CREATE TEMPORARY TABLE t ( a VARCHAR(20) NOT NULL, b VARCHAR(20) NOT NULL, c VARCHAR(20) NOT NULL, d VARCHAR(20) NOT NULL, e VARCHAR(20) NOT NULL, f DATE NOT NULL ) ENGINE=MEMORY"; $res = mysql_query($sql) or die( mysql_error() ); // READING THE CSV FILE AND LOADING THE TABLE $fp = fopen($csv, 'r'); while (!feof($fp)) { // READ THE CSV DATA INTO AN ARRAY $arr = fgetcsv($fp); if ($arr) { // DISCARD THE USELESS NULL STRING CAUSED BY THE TRAILING COMMA array_pop($arr); // CONVERT THE INVALID DATE FORMAT TO THE ISO FORMAT $arr[5] = date('c', strtotime($arr[5])); // CREATE THE INSERT QUERY $sql = 'INSERT INTO t ( a, b, c, d, e, f ) VALUES ('; // APPEND THE DATA FIELDS TO THE INSERT QUERY foreach ($arr as $val) { $val = "'" . mysql_real_escape_string($val) . "'" . ','; $sql .= $val; } // FINISH THE INSERT QUERY $sql = rtrim($sql, ','); $sql .= ')'; var_dump($sql); // RUN THE QUERY if (!$res = mysql_query($sql)) die( mysql_error() ); } } // EXAMINING THE TABLE TO SEE THE DATA WE LOADED $res = mysql_query('SELECT * FROM t'); while ($row = mysql_fetch_assoc($res)) { var_dump($row); }
Outras soluções  
 
programming4us programming4us