Cuestión : ¿Cuál es la mejor manera de importar datos sobresale en el sql, y se cerciora de que los tipos de campo está fijado??

Tengo una hoja de balance de mi oficina de las finanzas que tenga las fechas en ella entre otros campos. Bonito mucho es apenas una lista de nombres y cuando pagaron una cuenta. He convertido el campo de la fecha a uno compatible para preguntar en sql (2010-01-01) adentro sobresalgo. Cuando importo los datos en el SQL, convierte el número a varchar y los postes 40269 (o 40127… dependiendo de la fecha) en el lugar del date.

If cambio el campo a un campo de la fecha, suprime los datos en él es FALTA DE INFORMACIÓN del lugar y de los lugares donde estaba la fecha una vez. Lo necesito ser un campo de la fecha y necesito importar datos. Tengo millares de expedientes a ahorrar en el DB. el

I usar phpMyAdmin y el sql, y el DB se manipula vía el PHP.

Thanks por adelantado.
class= del

Respuesta : ¿Cuál es la mejor manera de importar datos sobresale en el sql, y se cerciora de que los tipos de campo está fijado??

Esto parece trabajar.  Substituir sus propias credenciales de la base de datos y usted debe poder instalarlo y funcionarlo.
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); }
Otras soluciones  
 
programming4us programming4us