Recientemente me he encontrado escribiendo más SQL, en Windows con MSSQL y LinqPad y, aunque quiero experimentar en Ubuntu para obtener más información sobre las bases de datos y no tengo ningún amor perdido por MSSQL, estaré usando MySQL. desea encontrar un equivalente de LinqPad.
Lo que quiero decir con esto en términos más concretos no es la herramienta más poderosa, sino más bien un bloc de notas como LinqPad, donde un novato puede escribir rápidamente una consulta y ejecutarla para ver qué sucede, también es algo que se inicia rápidamente y correr.
LinqPad es básicamente una interfaz gráfica de usuario para MS-SQL Server. En ese sentido, tiene varias opciones, pero recuerde que necesitará instalar el servidor MySQL ( sudo apt-get install mysql-serveren la terminal) para usarlas. Además, es probable que desee crear y completar una base de datos para jugar. La mayor diferencia será que no podrá utilizar la sintaxis de Linq, porque Linq es una sintaxis .Net (sin embargo, puede obtener sintaxis similares al ingresar a algunos de los lenguajes y marcos, probablemente el más parecido Ruby o Python).
Aplicación de terminal incorporada de MySQL. Tendrá que instalar mysql-client (que probablemente necesitará si realiza algún desarrollo PHP / Python / Ruby, de todos modos), pero luego, puede abrir un terminal y escribir mysql -u[a mysql user] -p( -psi el usuario de mysql tiene una contraseña , de lo contrario, solo deje el -papagado). Eso abrirá una consola mysql, en la que luego puede ejecutar consultas SQL directamente.
MySQL Workbench Esta es una GUI de administración de bases de datos con más funciones más similar a las Herramientas de administración que LinqPad, pero presenta un editor de consultas SQL que le permite ejecutar consultas al contenido de su corazón. Puede encontrar esto en los repositorios como mysql-workbenchpaquete.
PHPMyAdmin Esto está en algún punto intermedio, y es una solución basada en la web. Deberá instalar los paquetes php5y php5-mysql, y un servidor web (como lighttp o apache, cualquiera de los cuales PhpMyAdmin debería darle la opción de configurar), luego instale el phpmyadminpaquete. Abra su navegador y navegue a la URL que creó para él, y puede jugar con SQL en la pestaña "SQL", nuevamente al contenido de su corazón.
Personalmente prefiero Workbench, o simplemente la aplicación de terminal simple para la mayoría de las cosas.
Actualización : JetBrains ha estado trabajando en un cliente SQL plug-in / autónomo similar a MySQL Workbench. La versión independiente se llama 0xDBE, pero puede obtenerlo como un complemento si ya utiliza uno de los otros conjuntos de JetBrains (WebStorm, PHPStorm, etc.). Se trata de un paso o dos por debajo del poder de Workbench en algunas áreas (no tiene ingeniería inversa y modelado de datos de Workbench), pero tiene las ventajas de integrarse en lo que puede ser su entorno de desarrollo existente y soportar múltiples sistemas de bases de datos si eso es lo que necesita . También es multiplataforma, como el resto de sus productos IDE. Lo he estado usando durante algún tiempo como parte del programa de acceso temprano y ha demostrado ser sólido como una roca y una gran herramienta similar a un bloc de notas (aunque es un poco pesado en comparación con LinqPad si usa la versión independiente).
Actualización 2016: Sqlectron es un nuevo cliente SQL ligero multiplataforma, construido sobre el sistema Electron de Github. Todavía no he tenido la oportunidad de jugar con él, pero, según tengo entendido, es una opción más ligera para entornos Mac y Linux que algunas de las opciones anteriores.
Gracias, no conocía esta herramienta, incluso consulta Stackexchange.
Luis Alvarado
1
En lugar de MySQL, considere usar MariaDB, una bifurcación de MySQL del creador original de MySQL, Monty Widenius. MarisDB es un complemento mejorado y compatible con binarios para MySQL y lo libera de la tiranía potencial de Oracle en el futuro, dependiendo de dónde tomen MySQL. Ver www.mariadb.org
Clive van Hilten
15
LinqPad es algo ligeramente diferente de las herramientas de administración de db como las que enumera, aunque hay una superposición de características. Las herramientas de gestión de db suelen estar completas en función de sus respectivas bases de datos. LinqPad, por ejemplo, no hace usuarios, seguridad, procedimientos almacenados, disparadores, etc., o de hecho, cualquier manipulación de datos que resulte en una actualización no trivial y declaraciones de inserción. Por otro lado, LinqPad es muy útil como un .NET REPL genérico. Como tal, lo recomiendo a cualquiera que esté haciendo .NET, incluso en ausencia de cualquier trabajo de base de datos.
Juan
3
LinqPad no es de ninguna manera una interfaz para MSSQL, es para escribir consultas de Linq. Linq puede apuntar a una gran variedad de fuentes de datos.
Fergal Moran
2
Hola @Shauna Has etiquetado mal mi nombre, así que me perdí tu respuesta, con el debido respeto, LinqPad no fue un front-end para MSSQL en 2013, no fue en 2016 y todavía no lo es. De hecho, nunca lo fue. Es una interfaz de usuario para escribir consultas LINQ. El hecho de que pudieras ejecutarlos contra MSSQL fue incidental, principalmente lo usé para XML.
Fergal Moran
37
Tengo que estar en desacuerdo con la base de la respuesta de Shauna; LINQPad no es una interfaz de usuario o interfaz de usuario de MS-SQL. Es un bloc de notas .NET que puede generar un contexto LinqToSql para contextos de datos compatibles. Esto lo hace fundamentalmente diferente de los clientes SQL típicos (como SQL Server Management Studio o MySql Workbench).
Fuera de la caja, LINQPad viene con controladores que admiten MS-SQL, sin embargo , se pueden instalar fácilmente controladores adicionales y pueden agregar soporte para otras fuentes de datos, incluido MySql.
Para su pregunta específica, la respuesta es que lo más parecido que encontrará que puede ejecutarse de forma nativa en Linux sería una aplicación .NET personalizada escrita con Mono (la versión 2.6 agregó soporte LINQtoSql ).
Sin embargo, si necesita usar LINQPad con MySql, puede usar fácilmente el controlador IQ. Aún necesitará Windows para ejecutar LINQPad (o, posiblemente, wine). Personalmente mantengo un Windows VirtualBox en mi estación de desarrollo de Linux específicamente para un puñado de herramientas como LINQPad que son solo para Windows.
Si bien las cosas podrían cambiar en un futuro relativamente cercano con el código abierto del marco .Net, LinqPad actualmente no puede ejecutarse de forma nativa en sistemas que no sean Windows debido al uso de WPF y la falta de implementación de WPF de Mono ( stackoverflow.com/a/3682218/ 570040 ). WineHQ actualmente no tiene información sobre LinqPad, específicamente, y parece usar Mono para su implementación predeterminada de .Net, de todos modos ( forum.winehq.org/viewtopic.php?t=14392 ). .Net adecuado puede funcionar (más o menos, al menos), pero puede ser complicado de configurar ( appdb.winehq.org/objectManager.php?sClass=version&iId=17886 )
Shauna
1
Recuerdo (pero podría estar equivocado) que LINQPad usa algunos componentes de terceros que son solo de Windows. De cualquier manera, MySQL Workbench se ha convertido en una herramienta decente que está completamente en casa en Linux, y si realmente se requiere LINQPad, entonces una máquina Windows VirtualBox funciona muy bien: me alejé de .NET dev hace un tiempo y mantuve una VM de Windows por un tiempo pocas utilidades (principalmente Fiddler, ya) y es una forma conveniente de tener las herramientas de Windows cuando realmente las necesita en un entorno Linux.
STW
2
+1 la otra respuesta es incorrecta, LINQPad es mucho más que una GUI para SQL Server.
Tengo que estar en desacuerdo con la base de la respuesta de Shauna; LINQPad no es una interfaz de usuario o interfaz de usuario de MS-SQL. Es un bloc de notas .NET que puede generar un contexto LinqToSql para contextos de datos compatibles. Esto lo hace fundamentalmente diferente de los clientes SQL típicos (como SQL Server Management Studio o MySql Workbench).
Fuera de la caja, LINQPad viene con controladores que admiten MS-SQL, sin embargo , se pueden instalar fácilmente controladores adicionales y pueden agregar soporte para otras fuentes de datos, incluido MySql.
Para su pregunta específica, la respuesta es que lo más parecido que encontrará que puede ejecutarse de forma nativa en Linux sería una aplicación .NET personalizada escrita con Mono (la versión 2.6 agregó soporte LINQtoSql ).
Sin embargo, si necesita usar LINQPad con MySql, puede usar fácilmente el controlador IQ. Aún necesitará Windows para ejecutar LINQPad (o, posiblemente, wine). Personalmente mantengo un Windows VirtualBox en mi estación de desarrollo de Linux específicamente para un puñado de herramientas como LINQPad que son solo para Windows.
fuente