5 ms·
There's no reason you can't store your sql/tsql/plsql in version control. We were doing this 20+ years ago, all code was in csv (we upgraded from rcs to csv),
by ako 8y ago
There's no reason you can't store your sql/tsql/plsql in version control.
We were doing this 20+ years ago, all code was in csv (we upgraded from rcs to csv), and we had a productized distributed scheduling system that would deploy all the sql scripts every night on a number of oracle databases running from aix, to solaris, to vms, to hpux, to irix, and later linux and windows NT.
Similar like you would now use jenkins to build, deploy and test your java apps.
Developers would never touch the test/production databases, only commit sql to csv. Develop local, sql text files, test on a local or shared development database, and then commit to csv.
- lmm 8y agoThere's no reason you can't - but there's limited tooling support and limited worker mindshare for that kind of approach.
- ako 8y agoWhat tooling do you need? They're just source code files that you can edit with a code editor or an IDE (DataGrip). In addition you need a file to deploy your sql to a database, this can be a sql or shell script, or a gradle file or even make.
- lmm 8y ago> What tooling do you need? Jump-to-definition when something calls something else. Unit tests. Atomic build/install. > this can be a sql or shell script, or a gradle file or even make. Precisely the problem. There's too many different ways to do it, and no consistency.
- jve 8y agoAtomic build/install - well, you get transactions OOTB. Unit tests - In Microsoft world, 1st class citizen: https://docs.microsoft.com/en-us/sql/ssdt/verifying-database-code-by-using-sql-server-unit-tests?view=sql-server-2017 https://docs.microsoft.com/en-us/sql/ssdt/verifying-database... Debugging leaves more to wish, but still available in some limited form.
- CRConrad 8y agoHow is this a problem? There are many code editors / IDEs / plain text editors in use with pretty much every other programming language, and code in those languages can be put in version control from all of them. What you're saying is equivalent to “Only Java¹ code from The One True Java¹ IDE with all these features can be put into git”. So which One True IDE is that, and where's your proof that only code from that IDE can be found on, say, GitHub? ___ 1: Replace with C, C++, Basica, FORTRAN, COBOL, JavaScript, Ruby, Closure...
- OliverJones 8y agoumm. That's cvs. csv is something else, and it matters if you're a datashoveler.
- ako 8y agoOops, you're right. it's been a long time. Csv has aged better than cvs.