exportar tabla con extension sql de una msql server usando un script en php
Publicado por Sam (185 intervenciones) el 06/06/2018 18:45:51
Hola buenas amigas y amigos, verán llevo toda la tarde buscando y programando y nada que no hay manera.
Lo que estoy intentando es conectarme a una bbdd sql server y una vez hecho eso
entonces exportar una tabla de esa base de datos pero exportarla en extension
.sql para poder ser tratada.
Esta exportacion a formato .sql debe ser mediante un script hecho en php que no
consigo que funcione.
De todos modos pongo a continuacion el script que tengo pero para mysql, no para sql server que es lo que necesito , por si alguien sabria que hacerle por que yo ya no se como seguir , grancias de antemano.
Lo que estoy intentando es conectarme a una bbdd sql server y una vez hecho eso
entonces exportar una tabla de esa base de datos pero exportarla en extension
.sql para poder ser tratada.
Esta exportacion a formato .sql debe ser mediante un script hecho en php que no
consigo que funcione.
De todos modos pongo a continuacion el script que tengo pero para mysql, no para sql server que es lo que necesito , por si alguien sabria que hacerle por que yo ya no se como seguir , grancias de antemano.
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
function exportar($link, $tablas) // $tablas = '*'
{
//Declaro las variables necesarias
$tabla = '';
$salida = '';
//Consigo las tablas necesarias
if($tablas == '*')
{
$tablas = array();
$resultado = $link->query("SHOW TABLES");
while($fila = $resultado->fetch_row())
{
$tablas[] = $fila[0];
}
}
else
{
$tablas = is_array($tablas)?$tablas:explode(',',$tablas);
}
//Hago un recorrido
foreach($tablas as $tabla)
{
$resultado = $link->query("SELECT * FROM " . $tabla);
$numColumnas = $resultado->field_count;
//$salida .= "DROP TABLE " . $tabla;
$resultadoDos = $link->query("SHOW CREATE TABLE " . $tabla);
$filaDos = $resultadoDos->fetch_row();
$salida .= "\n\n".$filaDos[1].";\n\n";
for($i = 0; $i < $numColumnas; $i++)
{
while($fila = $resultado->fetch_row())
{
$salida .= "INSERT INTO " . $tabla . " VALUES(";
for($j=0; $j < $numColumnas; $j++)
{
$fila[$j] = addslashes($fila[$j]);
//$fila[$j] = ereg_replace("\n","\\n",$fila[$j]);
$fila[$j] = preg_replace("/\n/","\\n",$fila[$j]);
if (isset($fila[$j]))
{
$salida .= '"'.$fila[$j].'"' ;
}
else
{
$salida .= '""';
}
if ($j < ($numColumnas-1))
{
$salida.= ',';
}
}
$salida .= ");\n";
}
}
$salida .= "\n\n\n";
}
//Guardo el archivo
$referencia = fopen('historial/tabla-backup-'.time().'.sql','w+');
fwrite($referencia,$salida);
fclose($referencia);
}
Valora esta pregunta


0