6

Over the past couple of days I have noticed questions that have been flagged as needing to be closed or migrated to Stack Overflow because these questions contain code or not direct questions about a database. I have included a few examples of where I feel a question has been unfairly closed below:

  • Question 1: How should I write my query for the 'join table'?

    This question came up as needing to be reviewed and the poster is asking "How do I perform a JOIN based on the LAST_INSERTED_ID() generated when inserting the tutor table?" (paraphrased).

    I feel as though the question has been flagged as needing to be closed because it contains some references to Java - and while I accept that this is true, Java is actually coincidental and not particularly relevant to the problem that the poster is having. My reading of the question (and I accept that others may read it differently) is that once the user has inserted into the tutor table, and the query has completed, he then needs to take that ID and insert it into the tutor_subject table.

    This could actually be answered by giving an example of how he could take the LAST_INSERTED_ID() and use it to perform an insert into another table without needing to write any Java in the answer. For example, saying that he could use LAST_INSERTED_ID() in the insert of the tutor_subject table as long as the insert of the tutor table happened using the same connection. This is not Java - it is just repeating what the manual says:

    The ID that was generated is maintained in the server on a per-connection basis. This means that the value returned by the function to a given client is the first AUTO_INCREMENT value generated for most recent statement affecting an AUTO_INCREMENT column by that client. This value cannot be affected by other clients, even if they generate AUTO_INCREMENT values of their own. This behavior ensures that each client can retrieve its own ID without concern for the activity of other clients, and without the need for locks or transactions.

  • Question 2: query using the where clause if variables are not null

    This question is asking about how to dynamically generate a where clause using variables passed into the stored procedure. The question does not contain any code other than T-SQL, contains no reference to an IDE or any other subject that could be deemed as being off-topic, and yet it has still been flagged as so. I cannot understand why this question is not suitable for DBA.SE.

  • Question 3: Visual Studio Database Deployment Including Tables From Another Project

    This question actually did get migrated. While I understand that some may feel that deployment is not the same as development, or support, it is still part of the end to end process. Why do we allow questions about performing a restore, but not automated deployments from a database project within Visual Studio. How is trying to create database this way, so different from running a script or restoring a backup that it warrants being migrated to a different site?

    We allow questions about DACPAC's (for example Enable TDE When Publishing DACPAC) which are created within Visual Studio. We allow questions about SQL Plus (for example Calling SQL Loader From SQL Plus) which isn't even asking a language question or a database question, it is asking a tool question.

Our approach is inconsistent; and when we are inconsistent about what should and shouldn't be on our site, how can we expect our users to post better, relevant questions?

6

Question #1 - while it is certainly not strictly about Java, the question is framed in the sense of a programming question, which is on-topic for StackOverflow.com, and since it doesn't reference or require any advanced database-related coding nor any database-maintenance or management issue, it is off-topic for dba.se. From the on-topic help page for dba.se:

dba.se is not the right place to ask questions about...

- Client-side programming - ask on Stack Overflow
- Basic SQL - ask on Stack Overflow 

The question falls under both categories.

Question #2: This clearly falls under our mandate, since dynamic SQL is arguably an advanced topic.

Question #3: Visual Studio related questions are a bit of a grey area - for this question, I would vote to move it to StackOverflow.com since it is more likely to get good visibility there from a SQL Server Developer there. Frankly, it could exist in both places, but since cross-posting is disallowed, I think it would be better served on [so].

As with all human, community-moderated systems, there will be some level of disagreement about which is the best community for some questions. The close-voting system is designed to get the opinions of 5 community members prior to migrating any question; one could assume if a question gets migrated that it probably should have been.

  • 1
    Thank you for taking the time to provide your thoughts on this subject, I very much appreciate it! If I were to accept your points, then the inconsistency still remains - for example: if we only permit advanced topics on DBA.SE, then why do we not migrate questions that are relating to simple CRUD statements, or basic syntax errors to SO? I totally agree that there will always be a level of disagreement about what should /shouldn't be accepted though - but why then do we not just accept all questions about databases? – Mr.Brownstone Sep 8 '18 at 22:23
  • 3
    @Mr.Brownstone As I've said before here on meta, we could be better at enforcing our standards, and humans will always be inconsistent. That said, it is network policy to not migrate crap to other sites, and very basic questions often fit that description (a phrase coined by Jeff Atwood). – Paul White Sep 8 '18 at 23:02
4

I voted to close the individual questions because of ....

  1. It contains references to Java and in the statement it is asking for the syntax of a Java/INSERT statement with specific variables:

    • The INSERT would be on-topic, if it weren't too basic
    • The Java/String concatenation is off-topic
  2. I didn't vote on that question as far as I can tell from my voting history.

    • I agree with Max and yourself that this question is indeed on topic.
  3. The question is/was asking something specific about Visual Studio and database deployment with issues regarding two databases. If I review my summary sentence, then two of the three elements in the question are IMHO better suited for the Stack Overflow site. I assumed that programmers would have a better understanding of issues that could occur when deploying databases.

    • Visual Studio
    • Database Deployment

I also found the third question was lacking some in-depth information and could have been closed as unclear what you're asking.

While I agree that these questions could be answered by DBAs with a programming background (including myself), I would still vote the same again and for the same reasons.

There will always be some fringe cases where questions could be answered by a DBA, but what is stopping you from answering them over on Stack Overflow?

Good luck.

  • 1
    Thank you for taking the time to answer. I found your honest and constructive breakdown very helpful. – Mr.Brownstone Sep 10 '18 at 19:17
5

First question: would be on-topic for DBA if it wasn't also about how to interface this query to the Java code. Therefore I felt it was a better fit for SO.

Second question: I have no idea why I voted to close that (before I had my coffee?) and I have retracted my vote.

Third question: It's about creating deployment scripts in Visual Studio. There have got to be many more users on SO that have that experience then there are on DBA, hence I agree that it was migrated (I think I voted for the migration).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .